javascript - ionic 点击事件触发两次

标签 javascript angularjs angularjs-directive ionic-framework

假设我有一个 anchor 标记。单击事件从我的后端获取一些数据,并且这些数据更新我的模型。

<a ng-if="model.isAuthenticated" ng-click="model.download()" class=button button-small icon ion-android-download></a>

有人可以向我解释一下,为什么如果我将此 anchor 放在 ion-nav-buttons 标签内,点击事件会触发两次???

 <ion-nav-buttons side="right"><a ng-if="model.isAuthenticated" ng-click="model.download()" class=button button-small icon ion-android-download></a></ion-nav-buttons> 

最佳答案

所以,事实证明 ionic 中存在一个他们没有兴趣修复的错误。本质上,当您使用 ion-nav-button 时,框架会创建额外的 html。在这种情况下,框架会两次创建某个 div。

当我检查元素时,这就是我得到的:

ionic_bug

红叉表示同一个 div 被创建了两次。一个 div 处于事件状态,另一个已缓存。如果您像我一样,并且您在 ion-nav-button 中有一个自定义指令,则指令内的逻辑将运行两次。

更多内容请阅读本文 ionic duplicating html elements

关于javascript - ionic 点击事件触发两次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40179316/

相关文章:

javascript - 为什么我们分开使用公有和私有(private)变量

javascript - 检查弹出窗口是否以电话友好的方式关闭(检查 .closed 的值不起作用)

html - AngularJS ng-href 和 svg xlink

javascript - 如何从具有隔离范围的指令中公开行为?

javascript - Onsen UI ons-splitter-side 事件不起作用

angularjs - 避免太多 Angularjs 指令

javascript - 套索可选禁用 CSS :hover state

javascript - 我无法让最简单的 knockout.js 示例工作?

javascript - Angular Testing 类型错误

AngularJs 1.5 ES6 : bindings undefined in controller