angularjs – 根据指令中的属性设置templateUrl
发布时间:2020-12-17 07:43:25 所属栏目:安全 来源:网络整理
导读:我正在处理一组角度指令,我想根据属性的存在或值来加载正确的模板. my-form horizontal /my-formmy-form vertical /my-form 如果是水平的,templateUrl应该是/ partials / horizo??ntal-form和 如果是垂直的,templateUrl应该是/ partials / vertical-form 我
我正在处理一组角度指令,我想根据属性的存在或值来加载正确的模板.
<my-form horizontal> </my-form> <my-form vertical> </my-form> 如果是水平的,templateUrl应该是/ partials / horizo??ntal-form和 我对templateUrl感兴趣,因为我不能使用模板,因为html依赖于属性.在compile.pre函数中,html已经被加载了. 如果有另一种方式实现这一点,我开放,因为我现在开始有角度,越多的信息越好. 谢谢
其中一个解决方案是在模板文件中使用ng-include.
模板文件中的第一个属性将具有以下内容: <div ng-include = "getTemplate()"> </div> 在您的指令代码中,您将编写以下内容: scope : {direction : "="},link : function(scope,element,attrs) { scope.getTemplate = function(){ if(scope.direction === "horizontal") { return "horizontal.html"; } return "vertical.html"; } } 希望这可以帮助! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |