我试图合并两个QueryLists。问题是,我有几个mat-options,其中一些是通过组件外部的ng-content给出的,另一些是在组件中。换句话说,我使用ViewChildren获取其中一些,使用ContentChildren获取其他一些。我需要将它们放在同一个列表中,因此mat-select工作正常。
我知道this question完全相同,但它不起作用。我尝试了几次将两个QueryLists与.reset合并,但它的内容始终保持不变。即使我创建一个新的QueryList并且只想添加一些数字,它也不起作用。对此有什么解决方案吗?
编辑:
澄清我为什么要这样做:我创建了一个自己的组件,看起来像这样(简化):
<mat-form-field>
<mat-select>
<input #searchInput type="search" (keydown)="onKeyDownInput($event)" (input)="onSearchInput($event)"
class="select-search"/>
<mat-option class="hidden" disabled></mat-option>
<ng-content></ng-content>
</mat-select>
</mat-form-field>
它的目的是在下拉列表的顶部提供搜索输入。 Mat-Options来自外部,包含ng-content。我需要这个,因为它可以改变我想要显示的内容。还有一个隐藏和禁用的mat选项,因为否则mat-select的滚动逻辑无法正常工作。
答案 0 :(得分:0)
我不明白你为什么要这样做,但我会做的是。改变你获得EventEmitter,你可以订阅并获得价值。你也可以使用其他的querylist进行组合。