小编yi *_* mo的帖子

如何让ng-disabled指令适用于隔离范围

最近我必须使用一个输入元素同时使用ng-disabled和一个自定义指令,它使用隔离范围来评估表达式,就像ng-disabled正在做的那样,不知何故,自定义指令工作正常但ng-disabled没有,因为它只评估孤立范围内的表达式.

自定义指令非常简单,如:

angular
  .module('directives', [])
  .directive('conditionalAutofocus', function () {
    return {
        restrict:'A',
        scope:{
            condition:'&conditionalAutofocus'
        },
        link:function (scope, element, attrs) {
            if (scope.condition()) {
                attrs.$set('autofocus','true');
            }
        }
    }
});
Run Code Online (Sandbox Code Playgroud)

而页面看起来像:

<input name="pin"
       ng-model="pin"
       type="password"
       required
       ng-disabled="names == null"
       conditional-autofocus="names != null" />
Run Code Online (Sandbox Code Playgroud)

有人已经解决了这个问题吗?

提前致谢!雅尼

scope angularjs

14
推荐指数
2
解决办法
2万
查看次数

标签 统计

angularjs ×1

scope ×1