为什么我没有在angular js中获得更新的值

时间:2018-11-13 06:52:13

标签: javascript angularjs

谁能告诉我为什么我没有在angular js中获得更新的值?我总是变得“不确定”。为什么会这样呢?这是我的代码:

http://plnkr.co/edit/Utsg7Zr8fsg7zzX5Naib?p=preview 我正在使用自定义指令添加自定义验证

要求

  

当用户输入“名字”时,它应该显示错误。   名称”的长度(如果小于4的话,则应显示错误。最后一个相同)   名称,如果用户输入“姓氏”,则检查“名字”的长度是否短   大于4。如果是,则应显示错误

我执行以下步骤:

  1. 在第一个字段中输入“ a”(它会变成红色,这很好)。
  2. 但是当我在姓中键入“ abcderff”时,为什么名字是红色的

.directive(“ testfirst”,function(){         返回{             限制:“ A”,             要求:“ ngModel”,

        link: function(scope, element, attributes, modelVal) {

            modelVal.$validators.testfirst= function(val) {
              console.log(attributes.last)
              console.log((attributes.last && attributes.last.length < 4));
              if(val.length > 0 && !(attributes.last && attributes.last.length < 4)){

                return false
              }
               return true
            };
            scope.$watch("val", function() {
                modelVal.$validate();
            });

        }

    };
}).directive("testlast", function() {
    return {
        restrict: "A",
        require: 'ngModel',

        link: function(scope, element, attributes, modelVal) {

            modelVal.$validators.testlast= function(val) {
              if(val.length > 0 && !(attributes.first && attributes.first.length < 4)){
                return false
              }
              return true
            };
            scope.$watch("val", function() {
                modelVal.$validate();
            });

        }

    };
});

0 个答案:

没有答案