我有几种类型的用户,每个用户都有自己的密码更改窗口:
(function () {
var app = angular.module('Directives.UserType1.Modals.ChangePassword', [
'Controllers.UserType1.Modals.ChangePassword'
]);
app.directive('changePasswordModal', function () {
return {
restrict: 'E',
scope: {},
templateUrl: '/UserType1/Modals/ChangePassword.tpl',
controller: "Controllers.UserType1.Modals.ChangePassword"
};
});
})();
和
(function () {
var app = angular.module('Directives.UserType2.Modals.ChangePassword', [
'Controllers.UserType2.Modals.ChangePassword'
]);
app.directive('changePasswordModal', function () {
return {
restrict: 'E',
scope: {},
templateUrl: '/UserType2/Modals/ChangePassword.tpl',
controller: "Controllers.UserType2.Modals.ChangePassword"
};
});
})();
而angularjs告诉我,他并不了解使用哪一个。 我想用与控制器相同的技巧(点符号),但我不能。
请帮助我理解如何避免"多指令资源争用"问题:
多个指令[changePasswordModal,changePasswordModal]询问 用于模板:
P.S。对不起我的英语不好:C
答案 0 :(得分:0)
指令名称不能带点,并且在单个应用程序模块下不能具有相同的名称。
您可以在不同的应用程序模块下具有相同的指令名称,但是您需要显式设置这些指令的优先级,并且当在模板中按优先级顺序(降序)使用该指令时,将执行所有指令。
在您的情况下,您可以将指令重命名为以下内容。
userType1ChangePasswordModal
userType2ChangePasswordModal
希望这有帮助。