Я работаю в приложении, которое использует вкладку Clarity. Вот код в моем файле app.component.
<clr-tabs>
<clr-tab>
<button clrTabLink>General1</button>
<ng-template [(clrIfActive)]="generalActive">
<clr-tab-content>
<form clrForm clrLayout="horizontal">
<clr-input-container>
<label class="required">Delta Update Timestamp</label>
<input clrInput type="text" size="30" [(ngModel)]="configDetailsdlta_updt_ts" [ngModelOptions]="{standalone: true}"/>
</clr-input-container>
<header-comp></header-comp>
</form>
<button type="button" class="btn btn-primary" (click)="validateConfigDetails()">Submit</button>
</clr-tab-content>
</ng-template>
</clr-tab>
.....
В первую вкладку я встроил еще один компонент с именем header-comp, который определен как
<clr-input-container>
<label class="required">Table Name</label>
<input clrInput type="text" [(ngModel)]="tbl_nm" size="50" [ngModelOptions]="{standalone: true}"/>
<clr-control-error>You must provide a table name</clr-control-error>
</clr-input-container>
Проблема, с которой я сталкиваюсь, заключается в том, что я ввожу значение метки времени, сохраненное в модели configDetails на app.component, и имя таблицы, сохраненное в модели tbl_nm header.component, а затем переключаюсь на второе и затем вернуться к первой вкладке, имя таблицы теряется. Значение временной метки все еще присутствует.
Почему значение введенного имени таблицы теряется при переключении вкладок? Я не думаю, что это проблема взаимодействия родитель-потомок, потому что app.component может прочитать введенное значение имени таблицы, введенное, когда нажата кнопка «Отправить», и при условии, что я не переключил вкладки в первую очередь.