Javascript Angular.js错误:多个指令[tagManager,tagManager]要求隔离作用域
我制作了一个Angular.js应用程序,并使用Javascript Angular.js错误:多个指令[tagManager,tagManager]要求隔离作用域,javascript,angularjs,angularjs-directive,gruntjs,yeoman,Javascript,Angularjs,Angularjs Directive,Gruntjs,Yeoman,我制作了一个Angular.js应用程序,并使用yeoman构建了Grunt。该应用程序在开发过程中运行良好,但当我构建并部署到一个临时服务器时,所有指令(自有和第三方)都会出错:示例 Error: Multiple directives [tagManager, tagManager] asking for isolated scope on: <tag-manager tags="profile.styles" class="ng-isolate-scope ng-scope">
yeoman
构建了Grunt
。该应用程序在开发过程中运行良好,但当我构建并部署到一个临时服务器时,所有指令(自有和第三方)都会出错:示例
Error: Multiple directives [tagManager, tagManager] asking for isolated scope on: <tag-manager tags="profile.styles" class="ng-isolate-scope ng-scope">
错误:多个指令[tagManager,tagManager]要求在以下位置上隔离作用域:
及
错误:多个指令[gender,gender]请求模板:
我认为指令很好,因为它们在开发中起作用,但是(约曼)构建中发生了什么
此处有一条指令(以咖啡脚本形式)供参考
angular.module('clientApp')
.指令“性别”[->
模板:“”
限制:“EA”
范围:
值:'=',
链接:(范围、元素、属性)->
如果scope.value为“男性”
scope.icon='icon-male'
scope.color='blue\u fg'
其他的
scope.icon='icon-female'
scope.color='pink_fg'
]
您的构建过程正在复制您的指令(可能还有代码库的其余部分)。太棒了。你确实是对的。因为我是用Coffee脚本编写的,所以每个源文件在构建中都包含了两次。ThanksI也有类似的问题,这为我找到了解决办法。谢谢!(karma似乎记得一个文件的旧实例被移动到了另一个位置。重新启动karma完成了这项工作)。我也有类似的问题,但因为我在同一个指令上有模板:
和模板URL:
,但忘记了删除一个。
Error: Multiple directives [gender, gender] asking for template on: <gender value="profile.gender">
angular.module('clientApp')
.directive 'gender', [->
template: '<span><i class="{{icon}} {{color}}"></i></span>'
restrict: 'EA'
scope:
value: '=',
link: (scope, element, attrs) ->
if scope.value is 'male'
scope.icon = 'icon-male'
scope.color = 'blue_fg'
else
scope.icon = 'icon-female'
scope.color = 'pink_fg'
]