AngularJS-用控制器初始化触发ng-change

迪利亚·迪米特洛夫

我的模板中有类似以下内容:

<input name="searchText" placeholder="Search" data-type="search" 
       ng-model="searchText" 
       ng-change="searchRecords()" 
       ng-keyup="onKeyUp()">

当我转到该模板时,searchRecords()将调用函数(触发ng-change)。我只想searchRecords()在我开始输入时被叫(changesearchText将触发ng-change)。现在,它通过控制器初始化被触发。

我尝试在控制器中将设置searchTextnull''但还是一样。

这是设计使然,还是我缺少了某些东西?

编辑:

我意识到这段代码触发了我的searchRecords()

$scope.$watchGroup(['daysBefore', 'daysAhead'], function (newValues, oldValues, scope) { ... }

编辑:

我删除了ng-change并添加了以下内容:

$scope.$watch('searchText', function (newValue, oldValue) {
                $scope.searchRecords();
            });

无需任何更改即可$scope.searchText在控制器初始化时执行此代码。

迪利亚·迪米特洛夫

我在Google网上论坛找到了关于该主题的话题-https://groups.google.com/forum/#! topic/ angular/ uXldMqsQvRw

手表在注册时自动触发(并通过$ evalAsync异步触发),这将初始化手表并让您的代码知道初始值是多少。

如果这是不希望的,则可以将此检查放入您的保存方法中:

函数save(newVal,oldVal){如果(newVal === oldVal)返回;//在这里做事}

是的,我想摆脱这种代码,但显然我做不到

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在控制器中初始化ng-model时不触发Angularjs select ng-change

来自分类Dev

AngularJS控制器初始化

来自分类Dev

AngularJS控制器初始化

来自分类Dev

在加载Angularjs上从控制器初始化所有ng-model

来自分类Dev

在加载Angularjs上从控制器初始化所有ng-model

来自分类Dev

AngularJS初始化指令/控制器的$ scope

来自分类Dev

无法在AngularJS中初始化控制器

来自分类Dev

初始化多个控制器的$ scope变量-AngularJS

来自分类Dev

AngularJS重新初始化控制器

来自分类Dev

AngularJS-在控制器之前初始化服务

来自分类Dev

无法在AngularJS中初始化控制器

来自分类Dev

AngularJS重新初始化活动控制器

来自分类Dev

无法从AngularJS中的控制器初始化对象

来自分类Dev

Angularjs控制器未初始化

来自分类Dev

AngularJS:控制器初始化函数避免初始化被调用

来自分类Dev

AngularJS:如何从另一个控制器中动态初始化模板中的控制器

来自分类Dev

AngularJS:如何从另一个控制器中动态初始化模板中的控制器

来自分类Dev

AngularJS:在控制器中初始化嵌套作用域变量

来自分类Dev

如何在AngularJS中初始化嵌套控制器?

来自分类Dev

更改包含的页面和URL,而无需在AngularJS中重新初始化控制器

来自分类Dev

仅在AngularJS中完成初始化后才运行控制器

来自分类Dev

AngularJS $ watch控制器初始化期间的奇怪行为

来自分类Dev

使用业力测试angularjs时初始化控制器时出错

来自分类Dev

在AngularJS中,如何初始化所有控制器后运行代码?

来自分类Dev

幻影不会初始化/加载angularjs控制器方法

来自分类Dev

无法从AngularJS中的控制器初始化和获取数组

来自分类Dev

AngularJS:如何在初始化期间在控制器之间传递数据?

来自分类Dev

调试技术以排除未初始化的angularjs控制器

来自分类Dev

AngularJS:使用不同的服务初始化控制器

Related 相关文章

  1. 1

    在控制器中初始化ng-model时不触发Angularjs select ng-change

  2. 2

    AngularJS控制器初始化

  3. 3

    AngularJS控制器初始化

  4. 4

    在加载Angularjs上从控制器初始化所有ng-model

  5. 5

    在加载Angularjs上从控制器初始化所有ng-model

  6. 6

    AngularJS初始化指令/控制器的$ scope

  7. 7

    无法在AngularJS中初始化控制器

  8. 8

    初始化多个控制器的$ scope变量-AngularJS

  9. 9

    AngularJS重新初始化控制器

  10. 10

    AngularJS-在控制器之前初始化服务

  11. 11

    无法在AngularJS中初始化控制器

  12. 12

    AngularJS重新初始化活动控制器

  13. 13

    无法从AngularJS中的控制器初始化对象

  14. 14

    Angularjs控制器未初始化

  15. 15

    AngularJS:控制器初始化函数避免初始化被调用

  16. 16

    AngularJS:如何从另一个控制器中动态初始化模板中的控制器

  17. 17

    AngularJS:如何从另一个控制器中动态初始化模板中的控制器

  18. 18

    AngularJS:在控制器中初始化嵌套作用域变量

  19. 19

    如何在AngularJS中初始化嵌套控制器?

  20. 20

    更改包含的页面和URL,而无需在AngularJS中重新初始化控制器

  21. 21

    仅在AngularJS中完成初始化后才运行控制器

  22. 22

    AngularJS $ watch控制器初始化期间的奇怪行为

  23. 23

    使用业力测试angularjs时初始化控制器时出错

  24. 24

    在AngularJS中,如何初始化所有控制器后运行代码?

  25. 25

    幻影不会初始化/加载angularjs控制器方法

  26. 26

    无法从AngularJS中的控制器初始化和获取数组

  27. 27

    AngularJS:如何在初始化期间在控制器之间传递数据?

  28. 28

    调试技术以排除未初始化的angularjs控制器

  29. 29

    AngularJS:使用不同的服务初始化控制器

热门标签

归档