我正在尝试对我的 Controller 中的绑定(bind)范围对象运行基本数学函数。该 View 是一系列 slider ,需要根据几个不同 slider 的用户输入使用react。我似乎无法在前端获取实时更新的值。
这是我对这些值的“计算”。
$scope.mainSlide = {
assets: ($scope.slide1.assets * $scope.slide2.assets / .1),
roa: ($scope.slide1.roa * $scope.slide2.roa / .1)
};
我有点困惑为什么计算值没有绑定(bind)在前端。
如有任何帮助或指导,我们将不胜感激!
最佳答案
对于 $scope
上的计算属性,您可以使用 $scope.$watch
在值更改时重新计算并设置新值(例如 watch slide1 和slide2,当它们改变时设置mainslide的值)。您还可以将 mainSlide 的计算值设置为函数,它们将自动更新:
在你的情况下:
$scope.mainSlide = {
assets: function() { return ($scope.slide1.assets * $scope.slide2.assets / .1);},
roa: function() { return ($scope.slide1.roa * $scope.slide2.roa / .1);}
};
在您的 View 中使用它们:
Assets: {{mainSlide.assets()}}
Roa: {{mainSlide.roa()}}
函数方法的示例 Plunker:http://plnkr.co/edit/tFiZ5z?p=preview
$watch 方法的 Plunker 示例:http://plnkr.co/edit/5iASgJ?p=preview
关于javascript - 绑定(bind)范围对象的 Angularjs 数学,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19301128/