所以我前几天刚遇到一个新错误。我这样使用我的指令:
<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}
现在我明白了它的含义,我的主要问题是当我使用隔离范围时它为什么会这样做?有没有办法在保持绑定的同时绕过这个?