Angular JS文本字段输入更改 - 观看

时间:2015-06-27 12:16:11

标签: angularjs watch angularjs-ng-change

我有一个文本字段列表,末尾有一个空文本字段,绑定到一个数组。我需要检测空文本字段上的文本条目,以便当用户开始键入值时,我将另一个空元素添加到数组中,以便用户始终准备好另一个字段。

我应该使用$ watch或ng-change来查看更改是否会相应地添加元素?我知道$ watch总是在开火,所以看起来这可能是一个糟糕的选择。

    <div ng-repeat="variation in productEditorModel.ColorVariations">
                                                <div class="form-inline">
                                                    <input type="text" id="txtVariationName" placeholder="Name" name="variationName" ng-model="variation.VariationName" required class="form-control">

                                                    </div>
                                            </div>

3 个答案:

答案 0 :(得分:1)

考虑到性能方面,您应该更好地使用ng-change,因为它会像您在$('input').change(...)之类的输入中添加更改侦听器一样,就像您提到的那样。

考虑到用户体验和功能方面,在控制器中简单地使用$scope.$watch('model', ...)会更好,更容易。

但我仍然认为这取决于你将拥有多少输入。我认为即使是100多个输入也没有太大的区别,因为你只是比较字符串,我不认为用户在输入时会遇到延迟。

答案 1 :(得分:1)

为什么不将数组绑定到输入元素的ng-repeat?这样绑定就会自动生效。

答案 2 :(得分:0)

感谢输入,ng-change效果最佳。

rundll32 sysdm.cpl,EditEnvironmentVariables