如何将字符串分配给angular.js指令的template属性,方法是将字符串作为属性传递给任何会消耗该指令名称的元素?
例如:
在标记中: ...
然后在angular指令中:
angular.module('TestModule', [])
.directive('myCustomDirective', function(){
return {
restrict: 'AE',
template: 'my_template'
};
});
我已经通过使用来尝试绑定到指令的所有策略 '@','='和'&'但它们只能帮助将值传递到模板中但不会传递 模板本身。
欢迎任何帮助。
答案 0 :(得分:0)
正如New Dev所建议的,您可以在链接功能期间动态编译和添加模板。或者您可以定义固定的指令模板并使用ng-include来变换内部内容:像这样:
template: "<div ng-include='templateToUse'></div>",
scope: {templateToUse:'='}
现在,如果您从定义指令的位置传递不同的templateToUse。
<div my-directive template-to-use='determineTemplate()'></div>