Javascript Angularjs多个指令[gridsection,gridsection]要求模板位于:<;div gridsection="&引用&燃气轮机;
我收到错误:Javascript Angularjs多个指令[gridsection,gridsection]要求模板位于:<;div gridsection="&引用&燃气轮机;,javascript,angularjs,angularjs-directive,Javascript,Angularjs,Angularjs Directive,我收到错误:多个指令[gridsection,gridsection]要求使用此代码生成模板: 我不知道我是如何使用嵌套指令的,也不知道是什么导致了这种情况 html页面 <div gridsection ></div> 指令/section.html <div> here? </div> 在这里 看起来您在angular code中多次声明gridsection。为了子孙后代,我遇到这个异常是因为我试图创建一个名为pager的指令,它与
多个指令[gridsection,gridsection]要求使用此代码生成模板:
我不知道我是如何使用嵌套指令的,也不知道是什么导致了这种情况
html页面
<div gridsection ></div>
指令/section.html
<div>
here?
</div>
在这里
看起来您在angular code中多次声明gridsection。为了子孙后代,我遇到这个异常是因为我试图创建一个名为pager
的指令,它与引导程序的pager冲突。我以前在文件夹中有一个指令脚本文件的副本时看到过这种情况
i、 我的文件结构是
* myDirective.js
* myDirective - copy.js
基本上我有两个同名的指令
Doh强>
注释最初将此作为评论发布,但创建此注释是为了回应@jayjayjay的评论
确保没有两次包含脚本标记 我有这个问题,但只在标记中声明了一次指令,结果是因为我包含了两次脚本
注意:我在另一个答案的评论中看到了这一点,并将其作为一个答案发布,以便于访问/防止丢失 我得到这个错误的原因在其他答案中没有指定。 我将xyz指令的声明用作
我的定义是:
angular.module('app')
.directive('xyz', function () {
return {
templateUrl: '..../xyz.html',
restrict: 'EA',
scope: {
xyz: '='
},
link: function (scope, element, attrs) {
}
};
});
这里的问题是我允许将指令用作元素和属性。因此,
包含引起问题的两个声明
解决方案是将指令限制为仅用作元素
restrict:'E'
,或者将指令的名称更改为类似xyzView的名称,并像
那样使用它。您的意思是像我在多个html元素上使用它一样吗?我认为这行代码分为两个位置,angular.module('web')。指令('gridsection',function(){});啊,你说得对。我已经将它导入了我的index.html两次。谢谢你给我指明了正确的方向。或者你可以包含源脚本两次。我以前在文件夹中有一个指令脚本文件的副本时看到过。Doh!
angular.module('app')
.directive('xyz', function () {
return {
templateUrl: '..../xyz.html',
restrict: 'EA',
scope: {
xyz: '='
},
link: function (scope, element, attrs) {
}
};
});