Angularjs 在指令中获取$rootScope';s模板URL
是否可以在指令的templateUrl中获取Angularjs 在指令中获取$rootScope';s模板URL,angularjs,angularjs-directive,Angularjs,Angularjs Directive,是否可以在指令的templateUrl中获取$rootScope对象? 我的意思是,如果这是我的指令的功能: function AttributesCard() { return { restrict: "AE", templateUrl: function ($rootScope) { return $rootScope.baseUrl + "/attributesCard.directive.
$rootScope
对象?我的意思是,如果这是我的指令的功能:
function AttributesCard() {
return {
restrict: "AE",
templateUrl: function ($rootScope) {
return $rootScope.baseUrl + "/attributesCard.directive.html";
},
controller: AttributesCardController,
controllerAs: "vm",
scope: {
educationPlace: "=",
privileges: "="
},
bindToController: true
};
}
如何在templateUrl的函数中获取$rootScope对象?我在里面还有别的东西。或者,也许可以用一个服务代替$rootScope,为我获取这些数据
谢谢,ashilon是的,您可以在指令中注入任何内容,就像在控制器、服务等中一样:
app.directive("name", ["$rootScope", "myService", function($rootScope, myService) {
// ..
templateUrl: function () {
var baseUrl = $rootScope.baseUrl; // or myService.baseUrl;
return baseUrl + "/attributesCard.directive.html";
},
// ..
}]);
是的,您可以在指令中注入任何内容,就像在控制器、服务等中一样:
app.directive("name", ["$rootScope", "myService", function($rootScope, myService) {
// ..
templateUrl: function () {
var baseUrl = $rootScope.baseUrl; // or myService.baseUrl;
return baseUrl + "/attributesCard.directive.html";
},
// ..
}]);
可能重复的可能重复的感谢devqon。你的回答对我帮助很大。我只是做了一点小小的改变:我没有像您所展示的那样将$rootScope对象注入匿名函数中,而是将其注入函数AttributesCard,如下所示:函数AttributesCard($rootScope){…}谢谢devqon。你的回答对我帮助很大。我只是做了一点小小的改变:我没有像您所展示的那样将$rootScope对象注入到一个匿名函数中,而是将它注入到函数AttributesCard中,如下所示:函数AttributesCard($rootScope){…}