У меня возникла следующая проблема, я думаю, что это частый случай, но я не смог ее решить. У меня есть небольшой компонент предупреждения об ошибке, внутри которого есть метод для отображения ошибки. Я использую его в компонентах маршрута: я использую запрос @viewChild для доступа к его методу addNewMessage
, и он работает.
На этот раз у меня есть NgbModal из ng- bootstrap, и я открываю компонент с этим. В этом компоненте мне нужно использовать мой компонент error, чтобы показать ошибку, но я не могу заставить компонент error корректно загружаться внутри модального типа, и я не могу получить доступ к его методам с помощью viewChild, я не уверен, что это проблема с viewChild или компонентом не загружается из-за отсутствия чего-либо в конфигурации модулей.
Вот как я называю мой модальный (NewRecordingFormComponent) в компоненте маршрута:
const modalRef = this.modalService.open(NewRecordingFormComponent);
Так я использую свой компонент ошибки внутри модальности:
<voice-error-alert-component #alertComponent></voice-error-alert-component>
И вот как компонент показан в html после компиляции:
<voice-error-alert-component _ngcontent-dhb-c7=""></voice-error-alert-component>
Это запрос viewChild, который я использую в NewRecordingFormComponent
:
@ViewChild('alertComponent', { static: false }) alertComponent: ErrorAlertComponent;
Этот запрос работает в компонентах маршрута.
Я понятия не имею, как сделать эту работу, когда я смотрю на html, я должен видеть внутри него ng-for, но я ничего не вижу здесь, это заставляет меня думать, что компонент не компилируется, как если бы angular не знал его компонент и просто оставил его как простой html.
Я чувствую, что этот компонент не будет Возможно, из-за того, как я открываю его модальным bootstrap? это потому, что я использую его на динамическом c компоненте, и поскольку он не привязан к какому-либо маршруту, он не загружается? Нужно ли загружать y вручную или объявлять его вручную, чтобы его можно было использовать в модале?
Что еще можно здесь указать, чтобы я мог получить помощь по этому вопросу? Я довольно новичок в этой версии angular, я ищу, но я не могу найти что-то похожее на то, что я вижу, любая помощь очень ценится !!!