0
角度兩種方式UI綁定非常好。使用起來非常簡單,因爲角度手柄會自動綁定值。但是如果我想計算綁定之間的值,比如getter和setter來計算值,該怎麼辦?我該怎麼辦呢?在角度UI綁定中計算值
我看到我們可以使用filters
作爲getters,但是setters是什麼呢?我想要的是當用戶輸入數字10時,我需要在設置範圍模型之前計算它。有任何想法嗎?
在此先感謝。
角度兩種方式UI綁定非常好。使用起來非常簡單,因爲角度手柄會自動綁定值。但是如果我想計算綁定之間的值,比如getter和setter來計算值,該怎麼辦?我該怎麼辦呢?在角度UI綁定中計算值
我看到我們可以使用filters
作爲getters,但是setters是什麼呢?我想要的是當用戶輸入數字10時,我需要在設置範圍模型之前計算它。有任何想法嗎?
在此先感謝。
您可以將未經處理的值存儲範圍,看它,計算得到的值:,
$scope.userInput = 3;
$scope.watch('userInput', function(newValue) {
$scope.computedUserInput = newValue + 1;
});
或者,如果您使用的是支持NG-更改默認的指令,你可以簡單地使用和直接在您的作用域中調用方法。
,並會使用ngModelController我覺得這對於一些簡單的情況下,有點重,但提供了透明度第三條道路,你似乎是在尋求:http://docs.angularjs.org/api/ng.directive:ngModel.NgModelController
謝謝你的回答,但我認爲這兩種方法的建議上面都打破了雙向數據綁定。不是嗎? – bingjie2680
從某種意義上說,是的。據我所知,沒有辦法使用簡單的雙向綁定符號預處理用戶輸入。 – AlexG
如果您只支持> IE8,您可以隨時在您的示波器上定義getters/setters;但我通常在應用程序代碼中保持清楚。 – AlexG