【问题标题】:ng-if not updating on scope destroyng-if 不更新范围销毁
【发布时间】:2017-10-26 21:49:21
【问题描述】:

我有一个隔离范围指令。在该指令的链接函数中,我正在编译一个 html 模板并将其附加到文档正文中。

const template = `<div ng-if="vm.open"></div>`;
body.append(template);

我有一个按钮可以在 ng-click 上切换 vm.open 标志。这可以很好地显示/隐藏我的 div。但是,当我按下后退按钮时,我的作用域销毁事件处理程序被调用并将 vm.open 设置为 false。但在我的 DOM 中 vm.open 仍然是 true。

这是因为 ng-if 创建了一个新范围,并且由于我的指令是“父”,因此它不会破坏 ng-if 的范围?我发现另一个 stackOverflow 线程使用 ng-show 修复了这个问题,它确实如此。但我想了解为什么它不适用于 ng-if。

【问题讨论】:

    标签: javascript angularjs angular-ng-if


    【解决方案1】:

    试试 *ngIf={{vm.open}}

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-04
      • 2015-04-17
      • 2015-03-14
      • 2011-09-21
      • 2017-01-20
      相关资源
      最近更新 更多