У меня есть эта группа матов-переключателей:
<mat-button-toggle-group #group="matButtonToggleGroup">
<mat-button-toggle value="specific">
Specific
</mat-button-toggle>
<mat-button-toggle value="general" checked>
General
</mat-button-toggle>
</mat-button-toggle-group>
и у меня есть эти 2 поля.
<div *ngIf="group.value == specific">
<mat-form-field id="id">
<input matInput placeholder="Insert seed Id">
</mat-form-field>
<mat-form-field id="id">
<input matInput placeholder="Insert affiliate rank">
</mat-form-field>
</div>
Как вы можете видеть во втором фрагменте кода, я пытаюсь включить поля в DOM только тогда, когда выбрано значение Specific. Однако это не работает. Я прочитал здесь Как получить доступ к переменной шаблона Angular 2 в ngIf что переменная шаблона недоступна за пределами элемента шаблона и что вместо нее следует использовать @ViewChild
. Я нашел это руководство по использованию ViewChild https://blog.angular-university.io/angular-viewchild/. Но речь идет о ссылке на компонент (ColorSampleComponent), который был создан самим пользователем. Я пытаюсь сослаться на свою группу кнопок так:
@ViewChild(matButtonToggleGroup)
group: matButtonToggleGroup;
Но это не работает, потому что я не могу импортировать matButtonToggleGroup, я могу только импортировать модуль, но это не одно и то же.
Может ли кто-нибудь дать мне несколько советов о том, как получить значение togglegroup для использования в директиве ngIf? Спасибо