如何修复括号与点符号Angularjs

时间:2015-02-17 18:07:33

标签: javascript angularjs angularjs-directive angularjs-scope

问题非常简单,我认为下面的代码更好地解释了

//指令

.directive('special', function(){
    return {
        restrict: 'A',
        link: function(scope, element, attrs){
            element.on('focus', function(){
                element.removeClass('error-form');

                scope.$apply(function(){
                    alert(attrs.personal); //prints out 'INVALID_NAME'
                    scope.errors.INVALID_NAME = false; //updates as I'd like
                    scope.errors[attrs.personal] = false; //Should do the same as above but isn't
                });

            });
        }
    };
})

//字段中的代码(html)

personal="'INVALID_NAME'"

我想使用括号表示法,因为它是一个可重复使用的指令,我必须在很多领域使用它。但它没有用。我究竟做错了什么?感谢

1 个答案:

答案 0 :(得分:2)

变量attrs.personal的内容有一对额外的引号。将其更改为

personal = "INVALID_NAME"

它会起作用。