Угловая Структурный Вопрос
Я новичок в angular.js, и я просто интересно, как идти о выполнении той или иной ситуации.Угловые Директивы Scope
Так в основном, то, что у меня есть контейнер:
<div ng-controller="ContainerController">
<container></container>
</div>
И контроллер и директивы контейнера.
<script type="text/javascript" src="ContainerController.js"></script>
<script type="text/javascript" src="ContainerDirectives.js"></script>
Теперь директива заменяет <container>
тег с примером HTML: <example>{{ data }}</example>
В настоящее время в рамках этого ContainerController я определенные данные в виде строки. (Это все примерные цели). Однако, когда директива обращения заменяет ее, она не может найти переменную из-за объема.
Причина, по которой это происходит, заключается в том, что область действия сценария ContainerDirective
не находится в пределах области ContainerController
. Это означает, что он не может получить доступ к переменной.
Я просто не уверен в том, что вы используете для подобных ситуаций. Где я могу разместить все, чтобы ContainerDirective
мог получить доступ к области ContainerController
.
Я надеюсь, что я объяснил все достаточно
EDIT хорошо:
Test.js
(function(){
angular.module('test', []);
})();
TestController.js
(function(){
angular
.module('test')
.controller('TestController', [
'$scope',
TestController
]);
function TestController($scope) {
$scope.test = 'test';
}
})();
TestDirective.js
(function(){
angular.module('test').directive('test', function() {
return {
replace: true,
templateUrl: 'src/test/view/test.html',
link: function (scope, element, attrs) {
}
};
});
})();
test.html
<example><a href="abc/{{test}}">ClickMe</a></example>
index.html - тело
<body ng-app="App" layout="row" ng-controller="TestController as page">
<test></test>
<script src="src/test/Test.js"></script>
<script src="src/test/TestController.js"></script>
<script src="src/test/TestDirective.js"></script>
<script type="text/javascript">
angular
.module('App', ['test']);
</script>
</body>
По причинам, которые я переименованы некоторые переменные и удалены много данных, но это ядро, и я пытаясь увидеть что-то не так с этим.
Ошибка: [$ интерполировать: noconcat] Ошибка при интерполяции: а/{{испытание}} Строгих контекстная Escaping запрещает вставленное что сцепить несколько выражений, когда требуется доверенное значение.
Читали угловые документы? директивы очень хорошо объяснены. –
На самом деле я понял, что основное различие между моим кодом и кодом примера - это то, что я использую основной модуль, который включает дополнительный модуль. Этот дополнительный модуль содержит директиву. –
Из вашего обновленного ответа вы не можете использовать 'ClickMe', но вместо этого вы должны использовать 'ClickMe' Если вы хотите получить подробную информацию о том, почему нужно проверить эту ссылку https://docs.angularjs.org/api/ng/directive/ngHref – AndersRehn