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

Коллеги, у меня большой проект, куча модулей, при включении стратегии

preloadingStrategy: PreloadAllModules, у меня набегает логов роута на 2300 строк, потом приложение зависает если походить по роутам приложения. Если выключить стратегию preloadingStrategy: NoPreloading,, то работает норм. Что не так? Тут очевидно какой-то прикол ангуляра.

29 ответов

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

@definitelyfakename @thekiba @waterplea коллеги, привет! подскажите, пожалуйста, в какую сторону смотреть? Я конечно могу просто отключить стратегию загрузки всех модулей, но хочется понять что не так. Использую 9 версию ангуляра.

Все модули лениво подгружаются, и так как включено логирование роутера, то на каждой загрузке модуля и его роутеров, эмитится соотвествующий эвент

Евгений-Гений Автор вопроса
Hey 👋, i'm 𝖙𝖍𝖊𝖐𝖎𝖇𝖆! キバ
screenshot Все модули лениво подгружаются, и так как включено...

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

Евгений Гений
я понимаю. я его специально включил, когда разбира...

Потому что модулей очень много, и чтобы их оптимально загружать, надо написать кастомную стратегию загрузки модулей, которая будет срабатывать тогда, когда пользователь ничего не делает

Евгений-Гений Автор вопроса
Hey 👋, i'm 𝖙𝖍𝖊𝖐𝖎𝖇𝖆! キバ
Потому что модулей очень много, и чтобы их оптимал...

Правильно я понимаю что грузится по сети тот модуль который описан так loadChildren: () => import('...) ?

Евгений Гений
Правильно я понимаю что грузится по сети тот модул...

Да, и не только Angular генерирует дополнительные чанки для лезимодулей, комбинируя общие зависимости в отдельных чанках для лезимодулей, которые их используют

Евгений-Гений Автор вопроса
Hey 👋, i'm 𝖙𝖍𝖊𝖐𝖎𝖇𝖆! キバ
Да, и не только Angular генерирует дополнительные...

я посчитал по сети у меня грузится однотипных файлов 80 штук 48-es2015.3070293bfe439cf3174a.js, я так понимаю то модули

Евгений Гений
@definitelyfakename @thekiba @waterplea коллеги, п...

Создай свою стратегию или оставь по default :)

Евгений Гений
@definitelyfakename @thekiba @waterplea коллеги, п...

Вообще мне понравилась идея загружать модули preload только по ссылкам которые появились в UI, остальные lazy. Идея пришла после просмотра этого. Building Fast Angular Applications by Default. Minko Gechev. JS Fest 2019 Spring https://www.youtube.com/watch?v=Ewe_noCGtUQ

Евгений-Гений Автор вопроса
Rustam Mukhametshin
Вообще мне понравилась идея загружать модули prelo...

спасибо. я поковырялся в баге, она не с модулями связанна. а с onPush. походу геттер из шаблона зависал приложуху. пытаюсь понять почему на проде этой проблемы нет.

Евгений Гений
спасибо. я поковырялся в баге, она не с модулями с...

О_о Вы там факториалы высчитываете? Расскажите пж причину когда найдете

Евгений-Гений Автор вопроса
Raman Yazvinski
О_о Вы там факториалы высчитываете? Расскажите пж ...

нет обычный компонент. Что я заметил. если включить онпуш и походить по его чайлд роутам, то все работает. Если отключить то приложуха зависает. На проде такого нет. Счем это может быт связанно?

Евгений Гений
нет обычный компонент. Что я заметил. если включит...

Включите профайлинг на пару сек и посмотрите, из-за чего виснет

Евгений-Гений Автор вопроса
Raman Yazvinski
О_о Вы там факториалы высчитываете? Расскажите пж ...

С он пушем геттер вызывается с десяток раз. Со статегией дефаолт тысячи раз, особенно после перехода по чайладм. Почему на проде этой проблемы нет? Там такой же код) @Component({ selector: 'sol-release-details-create', templateUrl: './release-details-create.component.html', providers: [UnsubscribeService], }) export class ReleaseDetailsCreateComponent implements OnInit { public release$!: Observable<IReleaseDTO | null>; public isEdit: boolean = true; public fDReleaseDTO: IFormDataChange<ReleaseFormModel> | null = null; public get isFormValid(): boolean { if (this.fDReleaseDTO) { return this.fDReleaseDTO.status === FORM_STATUS.VALID; } return false; }

Евгений-Гений Автор вопроса
ಠ_ಠ Кирилл ಠ
потому что онпуш

на продакшн почему нет зависаний сайта?

Евгений Гений
С он пушем геттер вызывается с десяток раз. Со ста...

Проблема не в этом коде, 100% Кто-то дергает cd как бешеный - мб таймер | async в инпут запровайжен, мб еще что

Евгений-Гений Автор вопроса
Raman Yazvinski
Проблема не в этом коде, 100% Кто-то дергает cd ка...

Вот так геттер дергать нормально в ангуляре?

Евгений-Гений Автор вопроса
Raman Yazvinski
Включите профайлинг на пару сек и посмотрите, из-з...

да, спасибо. попробую завтра. пока нужно коллегам фикс отгрузить. а то все крашится на тесте)

Евгений-Гений Автор вопроса
Raman Yazvinski
Включите профайлинг на пару сек и посмотрите, из-з...

А правильно я понимаю что профайлинг не закончится никогда? при такой загрузке?

Евгений Гений
screenshot А правильно я понимаю что профайлинг не закончится...

Надо на стоп жать :) Если виснет и профайлинг, тогда уже надо вручную смотреть

Евгений Гений
я уже нажал стоп

Тогда должен скоро ожить

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта