角ViewChildren QueryList在* ngIf上更改

时间:2018-10-11 14:11:16

标签: angular angular2-changedetection viewchild

Stackblitz:example

根据以下文档:https://angular.io/api/core/ViewChildren

  

您可以使用ViewChildren从视图DOM获取元素或指令的QueryList。每当添加,删除或移动子元素时,查询列表都会被更新,并且查询列表中可观察到的更改将发出新值。

我理解这意味着我可以订阅更改,并期望当QueryList中的项目被“添加,删除或移动”时,将确切地发出一个值。

但是,如果组件中有一个* ngIf指令可以打开和关闭,那么当绝对没有“添加,删除或移动”时,我会收到一个changes事件。

浏览以下文章:https://blog.angularindepth.com/everything-you-need-to-know-about-change-detection-in-angular-8006c51d206f
我发现以下内容:

  

在当前视图组件实例上更新ViewChildren查询列表

这是否意味着每当“添加,删除或移动”一项或在变更检测周期中更改视图视图时,子视图就会触发?

我在这里不了解一些基本知识。文档含糊不清,是否有错误,我做错了吗?有人可以帮助我了解这里的情况吗?

所有代码都位于stackblitz中:https://stackblitz.com/edit/angular-wtcgdk

0 个答案:

没有答案