尝试使用应根据用户选择而改变的动态模板。
所以当选择下拉选项时,再加载另一个html模板。
我喜欢干净利落地以模块化方式使用可以单独测试的控制器。
我一直在读这个 https://coderwall.com/p/onjxng/angular-directives-using-a-dynamic-template
其他包括使用
ng-include
加载模板
任何人都知道更好的实施方式吗?
答案 0 :(得分:0)
您可以在指令中使用$ templateCache和$ compile。这并不总是一种更好的方式,取决于你想要达到的目标。
link: function (scope, element, attrs) {
$templateCache.get('yourtemplate.html').then(function(tmpl) {
element.html(tmpl);
$compile(element.contents())(scope);
});
}
您明白了这一点:您还可以使用指令作为其他指令的代理,方法是不使用$ templateCache并直接向您的元素添加另一个指令的标记(并对其进行编译)。