问题:
我试图用$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