Я использую RequireJS в своем приложении «Угловое». Я хотел бы require
мой pill
, где он действительно используется.Требовать директиву по шаблону
pill.js
define([], function() {
angular.module('app').directive('pill', function() {
return function(a,b,c) {
b.html("A pill");
};
});
});
incl.html
<div load-script="require(['pill']);"></div>
<div pill>test</div>
main.html
<html ng-app="app">
<head>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.0/angular.js"></script>
<script src="http://requirejs.org/docs/release/2.1.10/comments/require.js"></script>
</head>
<body>
<script>
var app = angular.module("app", [])
app.directive('loadScript', function() {
return {
link: function(scope, element, attrs) {
(new Function(attrs.loadScript))();
}
};
}
);
</script>
<div ng-include="'incl.html'"></div>
</body>
</html>
Этот короткий пример должен ДЕЦЛ являются директивой pill
, которая просто преобразует текст с test
в A pill
внутри файла incl.html
. Однако это не работает. Я думаю, это потому, что директива pill
зарегистрирована после составления incl.html
.
Я хочу, чтобы избежать объявления директив somwhere globaly, например, внутри main.html
, потому что он там не используется. Является ли это требование достижимым элегантным способом?