在Angular中使用javascript – ng-click vs watch

前端之家收集整理的这篇文章主要介绍了在Angular中使用javascript – ng-click vs watch前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个指令,它加载一个 JSON文件,然后使用该数据创建一个 HTML5画布图(即json数据保存文本,颜色,位置等内容).我还有许多输入字段(文本,滑块等),允许用户操作绘图.我看到我可以$观察每个元素或使用ng-click并调用函数 – 是否有推荐的方法

一些可能相关的说明:

>表单元素和画布都是同一指令模板的一部分
>表单元素响应onchange所以没有提交按钮
>检查每个表单元素值,然后转换然后修改json字符串.然后我调用一个刷新函数,用新数据重新加载我的画布.

我也可能以错误的方式接近这个……

解决方法

因此,根据我的理解,用户可以对某些元素(在指令中)执行某些操作,并且每次触发这些事件时都必须执行某些操作.

$watch的目的是每次特定变量的值发生变化时“观察”/做某事. $scope.$watch(‘watchedVariable’,onWatchedVariableChangedFn)其中onWatchedVariableChangedFn是一个函数.只有当值实际发生变化时才会触发此操作,而不管导致更改的原因.

另一方面,您可以将事件处理程序连接到标记属性,例如ng-click =’onClickFn()’.这些会从UI元素上的操作中触发. [另请注意,ng-click仅适用于可点击元素.您似乎有多个元素(文本,滑块等).]

您可能必须查看究竟是什么原因导致这些值的更改/导致您重绘画布然后决定您想要去哪种方式.

编辑:您可能要考虑的第三个备用项是在适用的情况下触发事件($emit / $broadcast)和处理($on)这些事件.

猜你在找的Angularjs相关文章