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) {
      }
    };
  });