169 похожих чатов

Коллеги, помогите, почему не корректно срабатывает условие <= если включены

aot и buildOptimizer? Angular 8
const baseRoutes: Routes = [
{
path: "",
component: MyComponent,
children:
window.innerWidth <= TABLET_MAX_WIDTH
? mobileChildRoutes
: desktopChildRoutes
}
];

@NgModule({
imports: [RouterModule.forChild(baseRoutes)],
exports: [RouterModule]
})

15 ответов

3 просмотра

Насколько я понимаю, в момент компиляции как раз генерируются метаданные для компонентов/модулей, так что, возможно, ангулар посчитал и зашил метаданные из декоратора в moduleDefinition

Евгений-Гений Автор вопроса
Raman Yazvinski
Насколько я понимаю, в момент компиляции как раз г...

Ваша объяснение для меня сложно), подскажите, пожалуйста, как это исправить?

Это как-то странно выглядит писать там условия

Евгений Гений
все работает при ng serve.

Именно с prod конфигурацией?

Евгений-Гений Автор вопроса
Юра 🪐
Это как-то странно выглядит писать там условия

возможно. у меня стоит задача грузить разные роуты в зависимости от разрешения дисплея.

Евгений-Гений Автор вопроса
Raman Yazvinski
Именно с prod конфигурацией?

да, в проде подставляется не тот роут. вычислил что если отключить аот и билдоптимизацию, работает. Но нужно с ними естественно запустить)

правильней будет регистрировать все роутеры, но пускать по Guard'у

Евгений-Гений Автор вопроса

а как быть если роуты совпадают? task/id task/id для мобили сделать префикс m, /m/task/id ?

это не запрещено, префикс не обязательно делать

вот рабочее решение https://stackblitz.com/edit/angular-j2ln94?file=src%2Fapp%2Fapp.component.html

Ого, я и забыл про матчеры. Сильно, сильно

Евгений-Гений Автор вопроса

@definitelyfakename Спасибо! Матчеры помогли! Как я понял при включенном aot и buildOptimizer Ангуляр отрабатывает выражения один раз, при билде. Поэтому в деве работало, а после билда нет. Я игрался с матчерами с час, заработало! Главное перед матчером не ставить path: "" , не знаю почему, но он тогда не работает. 6 часов всего потратил на эту проблему((( Вот как я сделал https://gist.github.com/evoytenkoapps/0651a55dcb5f66f59cf74eed2678f007

Похожие вопросы

Обсуждают сегодня

а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
Добрый день. Хочу сделать отрисовку по команде на панели. Почему-то рисуется только при втором вызове. С чем может быть связано, не подскажете? procedure TForm1.FormDblClick(...
Kirill Filippenok
20
I just installed it but how do I use it?
Talula
12
Всем доброго дня! Подскажите может кто использовал связку Pagebuilder + Clientsetting. Сами параметры с типом pagebuilder в модуле Clientsetting работают нормально, можно такж...
Александр Добриков
12
Всем привет! Нужен совет от опытных. Переношу свой проект с Делфи 10.2 Токио на Лазарус 3.2 установленный через инсталлятор fpcupdeluxe-x86_64-win64. При импортировании проект...
Дмитрий Завгородний
7
А почему в си некоторые вещи работают с двойными кавычками некоторые с одинарными? Нельзя было все сделать с одними или чтоб работало с разными? например чтоб выводить строки ...
.
15
Всем привет! Подскажите. Я написал приложение на Delphi 10.2 Tokyo под Windows 10. И передо мной стал вопрос о том чтобы сделать это приложение кроссплатформенным (под Linux и...
Дмитрий Завгородний
24
Эх кто-то пришел и весь праздник испортил :( You need complex FBX scene importing setup to change things on import? good luck with that. You need navigation and pathfinding? g...
Serg Gini
5
Good afternoon, I just started learning php in conjunction with mysql. I am registering a system on a local Mamp server using phpMyAdmin. It seems to be stored normally in the...
ManGo
1
я не про это. какая еще есть инфа, или может появиться, что ее можно обозначить названием данной игры? зачем плодить хештеги, которые обозначают одну сущность? в данном случ...
Aiwan \ (•◡•) / _bot
5
Карта сайта