【发布时间】:2018-07-04 09:46:31
【问题描述】:
我正在尝试合并两个查询列表。问题是,我有几个 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-option,否则mat-select的滚动逻辑不能正常工作。
【问题讨论】:
标签: angular angular-material angular-material2