角度两种方式的UI绑定是伟大的。这是如此容易使用,因为角手柄绑定的价值自动。但是,如果我想计算绑定之间的值,比如getter和setter来计算值,该怎么办?我该怎么做呢?
我看到我们可以使用filters作为getter,但是setter呢?我想要的是当用户输入一个像10这样的数字时,我需要在设置范围模型之前计算它。有什么想法吗?
提前谢谢。
发布于 2013-09-30 12:08:17
您可以将未处理的值存储到范围中,观察它并计算派生值:
$scope.userInput = 3;
$scope.watch('userInput', function(newValue) {
$scope.computedUserInput = newValue + 1;
});或者,如果您使用的是支持ng更改的默认指令,您可以直接使用该指令并在您的作用域中调用一个方法。
第三种方法是使用ngModelController,对于一些简单的情况,我觉得有点重,但是提供了您似乎想要的透明性:http://docs.angularjs.org/api/ng.directive:ngModel.NgModelController
https://stackoverflow.com/questions/19092760
复制相似问题