Я боролся с реализацией Modal Navigation внутри Tab Navigation в Nativescript. Поэтому мне было интересно, есть ли у кого-то хорошая практика реализации того, что я ищу.
Я пробовал несколько способов, но ни один из них не работал, мне может не хватать глубоких знаний о router navigation, так как большая часть ошибок связана с navigation.
Вот playground, который пытается воспроизвести то, чего я пытаюсь достичь: https://play.nativescript.org/?template=play-ng&id=VdmiR9&v=8
Часто встречались следующие ошибки:
CONSOLE ERROR [native code]: ERROR Error: No componentRef found in DetachedRouteHandle
ERROR Error: Uncaught (in promise): Error: StaticInjectorError(AppModule)[FirstModalComponent -> ModalDialogParams]
(В то время как ModalDialogService был введен внутрь AppModule)
No component factory found for RootModalComponent. Did you add it to @NgModule.entryComponents(В то время как RootModalComponent был добавлен в entryComponents модуля с отложенной загрузкой, поэтому я добавил его в AppModule)
Can't resolve '~/app' in...(Эта ошибка странная, потому что в некоторых проектах ленивая загрузка модулей работает с этим импортом «~/app», а в других проектах это не удается)
Error: Cannot match any routes. URL Segment: 'tabs/default'(Эта ошибка возникала все время, кажется, я не совсем понял способ реализации маршрутов)
Если кто-то знает, как сделать modal navigation внутри tab navigation, это мне очень поможет.
@Manoj извините, это действительно неправильная игровая площадка, найдите хорошую здесь: play.nativescript.org/?template=play-ng&id=VdmiR9&v=8
Я думаю, что это проблема с {N} Angular только при использовании выходов (фрейма) в TabViewItem и запуске оттуда модального диалога. Вы можете попробовать использовать простые компоненты в TabView вместо выходов, что, по крайней мере, может сделать это больше не блокировщиком.
@Manoj, у вас есть пример TabViews с простыми компонентами? Спасибо
Просто обратитесь к документы.
@Manoj это будет выглядеть так? Я пытаюсь совместить оба, поэтому я оставляю маршрутизацию вкладок. Найдите здесь v9 игровой площадки: play.nativescript.org/?template=play-ng&id=VdmiR9&v=9
Похоже, проблема в том, что вы пытаетесь перейти к другому модальному из одного модального, командная практика закрывает существующий модальный, а затем переходит к другому.
@Narendra Я пробовал что-то подобное, в основном я возвращаюсь к закрытию модального окна и закрываю модальное окно (программно). При этом навигация ломается...





В настоящее время модальная навигация внутри tabview несколько глючит во фреймворке Nativescript Angular, но есть обходной путь. Вы можете найти полную реализацию этого modal navigation в этом образце игровой площадки: https://play.nativescript.org/?template=play-ng&id=TkK7sQ&v=5
Для получения дополнительной информации взгляните на эту проблему, которую я создал в их репозитории GitHub: https://github.com/NativeScript/nativescript-angular/issues/1774.
Вы уверены, что поделились правильным образцом Playground, я не нашел никаких модулей или представлений вкладок в коде по ссылке.