我需要设计动态菜单,菜单项将从json加载。当菜单点击我想在它们上应用不同的模板。
我正在使用Directives,但我想知道如何在Controller中附加Element时使用模板。我想使用模板因为我不想要硬编码的东西,我想调用模板文件。
如何将属性传递给上面的小提琴?
任何其他消息,请告诉我!!
app.directive("helloWorld", function() {
return {
restrict: "E",
scope: {
name: "@name"
},
template: "<button ng-click='click()'>Click me</button>",
controller: function($scope, $element){
$scope.clicked = 0;
$scope.click = function(){
alert("Element clicked");
$element.append('yes i did it');
}
}
};
});
答案 0 :(得分:0)
您可以使用$ http下载您的模板,并在$ compile之后编译它:
app.directive("helloWorld", function($http, $compile) {
return {
restrict: "E",
scope: {
name: "@name"
},
link: function(scope, element, attrs) {
$http.get("yourTemplate").then(function(template) {
$compile(template)(scope);
element.append(template);
});
}
};
});