在Angular指令中重命名需要ngModel

时间:2017-04-02 19:05:55

标签: angularjs angularjs-directive angular-ngmodel

我已经开发了一些指令,在其中我使用某种模式来命名属性。所有属性都以“fs-”为前缀,例如<div fs-attrtibute="value"></div>

是否可以为ngModel属性使用自定义名称,并仍保留模型控制器功能。例如<div fs-model="value" fsDirective></div>

myApp.directive('fsDirective', function() {
    return {
        require: 'fsModel',
        link: function($scope, element, attrs, ngModel) {
                    ngModel.$setViewValue('StackOverflow');          
            };
        }
    };
});

1 个答案:

答案 0 :(得分:0)

正如您在此处所介绍的那样,Angular将在名为&#39; fsModel&#39;的指令中寻找控制器。并将其提供给您的链接功能&#39; ngModel&#39;论点。可以将ngModel包装在自定义的“直通”中。指令,但这会带来非常小的好处的复杂性。

我们同样使用&#39;命名空间&#39;对于我们所有的当地指令,但留下Angular的&#39; ng&#39;只有空间,因为它清晰而一致。