不能在同一视图中使用指令两次

时间:2017-07-04 07:40:33

标签: javascript angularjs angularjs-directive

所以我前几天刚遇到一个新错误。我这样使用我的指令:

<a sidebar-select-item="selectedItem" item-type="type1"></a> <a sidebar-select-item="selectedItem" item-type="type2"></a>

指令如下所示:

.directive('sidebarSelectItem', ['$rootScope', 'SidebarService','$compile','$parse', function($rootScope, SidebarService, $compile, $parse){

    return {
        restrict:'A',
        replace: false,
        scope: {
            sidebarSelectItem: "=sidebarSelectItem"
        },
        link: function(scope, element, attr){
            //Removed code for readability
        }
    };

}])

以上看起来很稀疏,但已经清理了它的本质。我没有遇到任何链接问题,但只要范围是指令的一部分,我就会收到以下错误:

Multiple directives [sidebarSelectItemtranslate, new/isolated{3}] asking for {4} on: {5}

现在我明白了它的含义,我的主要问题是当我使用隔离范围时它为什么会这样做?有没有办法在保持绑定的同时绕过这个?

0 个答案:

没有答案