什么从用户,到Angular JS的用户?

时间:2017-05-24 10:25:47

标签: javascript angularjs angularjs-directive

当我试图站在Code Snippet下面停留在功能上来自用户(文本){....}开始在互联网上潜水时一无所获。不明白它会做什么。

app.directive('mobileNumberValidation', function ($parse) {
    return {

        require: "ngModel",
        restrict: "ECA",
        link: function (scope, elm, attrs, ngModelCtrl) {
            function fromUser(text) {
                var limitLength = 19;
                if (text) {
                    if (text.length > limitLength) {
                        ngModelCtrl.$setViewValue(ngModelCtrl.$viewValue.substring(0, limitLength));
                        ngModelCtrl.$render();
                    }
                    return text;
                }
                return undefined;
            }
            ngModelCtrl.$parsers.push(fromUser);
        }
    }
});

1 个答案:

答案 0 :(得分:3)

fromUser是一个传递给$parsers的函数,最终会更改将formatting\value应用此input的{​​{1}}标记。 Read this并且还可以看到example fiddle

在你的情况下:

让我们说这个指令适用于某些输入,如下所示:

directive

因此,<input mobileNumberValidation ng-model="user.number"> 函数会通过fromUser(text)获取移动电话号码(文字中),然后ngModel字符串\文字字符仅限limit\trim\substring