Javascript 将数学规则(如rnd、max等)应用于用户使用AngularJS指令输入的值

Javascript 将数学规则(如rnd、max等)应用于用户使用AngularJS指令输入的值,javascript,angularjs,angularjs-directive,angularjs-scope,angular-ui,Javascript,Angularjs,Angularjs Directive,Angularjs Scope,Angular Ui,我有如下定义的总和计算规则,其中2013年表示年份,5和6是发送给项目的一些代码: app.run(function($rootScope) { $rootScope.MATHRULES = { 2013: { 5: 'min(1123, 106800)', 6: 'min(Math.max(Math.round(123123 * 0.062)), 0)' } }; });

我有如下定义的总和计算规则,其中2013年表示年份,5和6是发送给项目的一些代码:

app.run(function($rootScope) {

    $rootScope.MATHRULES = {
        2013: {
            5: 'min(1123, 106800)', 
            6: 'min(Math.max(Math.round(123123 * 0.062)), 0)'            
        }
    };
});
问题: 我想写一个指令,只有当用户输入一些新值时,我才能根据年份和来自attrs的代码应用上面提到的规则。请告诉我怎么做。我应该使用scope.$watch或其他工具来查看值是否发生变化

app.directive('wuiMathRules', function () {

    return {
        restrict: 'A',
        require: 'ngModel',
        link: function (scope, el, attrs, ngModelCtrl) {
            ...
        }
    }
});

您可以将手表添加到链接功能中。它可以观察范围变量,该变量可能是用户更新的输入字段的模型