Angularjs中没有多个指令

时间:2017-08-23 12:55:37

标签: javascript angularjs ionic-framework

我有两个指令,一个是避免剪切,复制和粘贴,另一个是设置字符数限制。当我单独使用这些指令时,我没有收到任何错误,但当我尝试在单个html输入框中使用它们时,我收到此错误:

  

[$ compile:multidir]多个指令[limitChar(module:main),stopccp(module:main)]要求新的/隔离范围:

剪切复制指令:

angular.module('main')
.directive('stopccp', function (){
    return {
        restrict: 'EA',
        scope: {},
        link:function (scope, element) {
            element.on('cut copy paste', function (event) {
                event.preventDefault();
            });
        }
    };
});

文本长度指令:

angular.module('main')
.directive('limitChar', function() {
    return {
        restrict: 'A',
        scope: {
            limit: '=limit',
            ngModel: '=ngModel'
        },
        link: function(scope) {
            scope.$watch('ngModel', function(newValue, oldValue) {
                if (newValue) {
                    var length = newValue.toString().length;
                    if (length > scope.limit) {
                        scope.ngModel = oldValue;
                    }
                }
            });
        }
    };
})

HTML:

<input type="text" stopccp placeholder="{{'notes_message' | translate}}" 
       ng-model="vm.advance.description" id="field2" ng-change="vm.fillStarted()"
       limit-char limit="15">

最初没有对stopccp指令的限制。之后,我限制为E,我没有得到任何错误,但我能够剪切,复制和粘贴。所以任何人都可以告诉我该怎么做。

0 个答案:

没有答案