如何使用动态模板创建指令?
'use strict'; app.directive('ngFormField',function($compile) { return { transclude: true,scope: { label: '@' },template: '<label for="user_email">{{label}}</label>',// append replace: true,// attribute restriction restrict: 'E',// linking method link: function($scope,element,attrs) { switch (attrs['type']) { case "text": // append input field to "template" case "select": // append select dropdown to "template" } } } });
<ng-form-field label="First Name" type="text"></ng-form-field>
有类似的需求。 $ compile做这项工作。 (不完全确定如果这是“的”方式做到这一点,仍然工作我的方式通过角)
http://jsbin.com/ebuhuv/7/edit – 我的勘探测试。
需要注意的一点(根据我的例子),我的一个要求是,一旦你点击保存,模板将根据类型属性改变,并且模板是非常不同的。所以虽然,你得到数据绑定,如果需要一个新的模板,在那里,你将不得不重新编译。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。