問題:
我試圖用$scope.$watch
方法上的號碼輸入使用嚴格的屬性一樣,max
,min
,maxlength
和step
一個NG-模型。
當輸入中插入的值超過任何這些屬性時,ng模型將檢索undefined
。
因此,最終會發生什麼:$scope.$watch
每當我們改變輸入值時都會觸發。一旦該值未定義,只有當插入的值再次爲有效,換句話說,遵循屬性規則(最大,最小,最大長度和步長)時纔會再次觸發。
例如,
用戶輸入: -2,4- - >$scope.$watch
被觸發,並輸出,作爲newValue
undefined
。
用戶增加了一個新的數字: -2,44 - >$scope.$watch
不再被觸發,這樣一來。
main.js
$scope.$watch("user.input.base.sphere", function(newValue, oldValue) {
console.log(newValue);
}
**的index.html
<input
ng-cloak
type="number"
ng-class="user.settings.input.sphere.class"
autocomplete="off"
required
name="sphere"
id="in-sphere"
title="Sphere"
step="{{user.filter.sphere.step}}"
min="{{user.filter.sphere.min}}"
max="{{user.filter.sphere.max}}"
maxlength="{{user.filter.sphere.maxlength}}"
placeholder="{{user.filter.sphere.placeholder}}"
ng-model="user.input.base.sphere"
select-on-click
sphere>
問題:我怎麼能還讓$scope.$watch
甚至在不確定ng-model
這將是非常有益的,謝謝你,也爲你的時間寫下一個例子,這是很親切從你 – Vladimir
我必須指出,可悲的是,創建此方法後,執行時間比以前更長。但是,它在這一點上起作用 – Vladimir