Использование компонента в качестве ссылки на диалог, но не всегда
Итак, у меня есть компонент, который иногда используется как ссылка на диалог, а иногда обычно используется вне диалога.
Например:
- Форма с ответом да или нет
Иногда я визуализирую этот компонент внутри компонента чата (который не является диалогом), а иногда я визуализирую этот компонент сам по себе как диалог.
Теперь проблема в том, что я использую:
constructor(
private dialogRef: MdDialogRef<PaymentFormComponent>
) {
}
в конструкторе, так как я хочу иметь возможность вручную закрывать диалог при возникновении события:
if (this.dialogRef) {
this.dialogRef.close();
}
Теперь это вызывает проблему, когда я использую компонент вне диалога, потому что он говорит это
ERROR Error: "No provider for MdDialogRef!"
Возможно ли, чтобы это было предоставлено только по желанию и было бы нулевым, когда оно не существует?
1 ответ
Решение
Я думаю, @Optional декоратор исправит вашу проблему
@Optional()private dialogRef: MdDialogRef<PaymentFormComponent>
) {
}