У меня есть несколько диалогов в одном компоненте. Все они выглядят примерно одинаково, поэтому я хотел бы создать функцию, которая бы вызывала разные диалоги с разными сообщениями. Вот что я уже придумал:
текущий диалог:
deActivate(user: UsersList) {
const dialog = this.dialog.open(DeactivateUserDialogComponent, {
height: '20%',
width: '50%',
data: {
dialogMessage: user
}
});
dialog.componentInstance.onChange.subscribe(() => this.getUsers());
}
Итак, моя идея - сделать универсальный диалог:
openDialog(dialogName, message) {
const dialog = this.dialog.open(dialogName, {
data: {
dialogMessage: message
}
});
dialog.componentInstance.onChange.subscribe(() => {
this.getUsers(), dialog.close();
});
}
И вызвать метод:
openDialog(userDeleted: UsersList) {
this.openDialog(DeactivateUserDialogComponent, user);
}
но проблема в dialog.componentInstance
"it cannot exist on type {}"
.
Мне нужно componentInstance
, чтобы сделать обновление в родительском компоненте (это единственный способ, которым он работает без обновления). Так что же я могу сделать на заводе и не беспокоиться об обновлении?