微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

AngularJS – 指令模板动态

如何使用动态模板创建指令?
'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>

这是我现在的,它正在正确显示标签。但是,我不知道如何附加额外的HTML到模板。或者将2个模板合并为1。

有类似的需求。 $ compile做这项工作。 (不完全确定如果这是“的”方式做到这一点,仍然工作我的方式通过角)

http://jsbin.com/ebuhuv/7/edit – 我的勘探测试。

需要注意的一点(根据我的例子),我的一个要求是,一旦你点击保存,模板将根据类型属性改变,并且模板是非常不同的。所以虽然,你得到数据绑定,如果需要一个新的模板,在那里,你将不得不重新编译。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐