我有一个指令myDirective与变量类型。如果我运行< my-directive type =“X”>我想让指令使用templateUrl:x-template.html。
如果我做< my-directive type =“Y”>我想让指令使用templateUrl:y-template.html。
如果我做< my-directive type =“Y”>我想让指令使用templateUrl:y-template.html。
这是我当前的指令。
app.directive('myDirective',function() { var myDirective = { templateUrl: 'X-template.html',restrict: 'E',scope: { type: '=' },}; return myDirective; });
我读通过stackoverflow和有角度的文档,但没有发现任何我需要的。
我现在正试图做一些类似的事情:
if ($scope.type === 'X') { templateUrl: 'X-template.html',} else if ($scope.type === 'Y') { templateUrl: 'Y-template.html',}
但不知道在哪里做。
你知道这是可能和如何?
你可以在
this issue左右使用ng-include里面编译:
原文链接:/angularjs/145467.htmlapp.directive('myDirective',function() { return { restrict: 'E',compile: function(element,attrs) { element.append('<div ng-include="\'' + attrs.type + '-template.html\'"></div>'); } } });