Разве nestJs это не фреймворк для больших энтерпрайз приложений?

|
kernokus 2022-06-26 16:48:10
kernokus 2022-06-26 16:12:52
там надо дальше в onInit эти данные использовать.
отрисовка-то ладно. ngIf решает эту проблему

в общем моя ошибка была в том что я делал subscribe на данные из сервиса и потом сразу после этого использовал данные из переменной в компоненте дальше в onInit а там был null от начального значения Behavoiur.
перенес логику в сабскрайб и сделал фильтр на Bollean. всё заработало

zigzag_ua 2022-06-26 16:48:30
angular_ru-568531.jpg
вот стрелочкой показал модуль с модалкой
SergeiVakhrushev 2022-06-26 16:48:33
zigzag_ua 2022-06-26 16:42:26
или нет… он в нескольких файлах упоминается, ок сейчас через bundle analyzer гляну

какие могут быть проблемы:
— компонент импортится в каких то сервисах как напрямую так и нет (следующий пункт)
— использование index.ts файлов в которых объединяются экспорты
— модуль импортится где то еще, что связанно с первыми двумя пунктами
что приводит к неявным импортам всех экспортов вместо одного нужного
как итог — получаем непредсказуемые чанки

zigzag_ua 2022-06-26 16:49:20
так проблема не в чанках
zigzag_ua 2022-06-26 16:49:32
если бы из-за чанков, то передача рефов не помогла бы
SergeiVakhrushev 2022-06-26 16:49:35
zigzag_ua 2022-06-26 16:48:30
вот стрелочкой показал модуль с модалкой

а почему mail-box-card, если говорили про UserModalModule?

zigzag_ua 2022-06-26 16:49:50
ну я так назвал, чтоб простое название было
SergeiVakhrushev 2022-06-26 16:50:05
zigzag_ua 2022-06-26 16:49:50
ну я так назвал, чтоб простое название было

ок

SergeiVakhrushev 2022-06-26 16:50:20
а он лейзи лоад?
SergeiVakhrushev 2022-06-26 16:51:14
и где в аналайзере MatSnackBar сейчас?
zigzag_ua 2022-06-26 16:52:29
SergeiVakhrushev 2022-06-26 16:51:14
и где в аналайзере MatSnackBar сейчас?

angular_ru-568540.jpg

zigzag_ua 2022-06-26 16:53:40
SergeiVakhrushev 2022-06-26 16:50:20
а он лейзи лоад?

он используется виджетом на дашборде. Дашборд — lazy

zigzag_ua 2022-06-26 16:54:03
да это всегда такая проблема…
zigzag_ua 2022-06-26 16:54:43
что-то у разработчиков пошло не так, не зря же они в 14 ангуляре добавили в параметры Injector
zigzag_ua 2022-06-26 16:55:41
они создали штуку, которая принимает компоненту, и которая работает на честном слове(
zigzag_ua 2022-06-26 16:56:15
еще как вариант можно попробовать, в 14 ангуляре можно компоненты без модуля делать
SergeiVakhrushev 2022-06-26 16:56:55
> в 14 ангуляре можно компоненты без модуля делать
но они с модулем, это просто некий сахар
SergeiVakhrushev 2022-06-26 16:57:14
к тому же не для продакшена
SergeiVakhrushev 2022-06-26 17:02:29
zigzag_ua 2022-06-26 16:52:29

с учетом того что он в вендоре — не вижу причин почему добавление в AppModule bad Practice. Я в вероятностью 90% уверен что проблема в неорганизованных импортах и некорректных чанках. у нас просто такая же проблема с которой мы сейчас разбираемся

SergeiVakhrushev 2022-06-26 17:03:30
у нас тоже пока в app есть некоторые модули, но до тех пор пока все не выстроится в правильной иерархии
SergeiVakhrushev 2022-06-26 17:05:13
тот же main чанк мы уже уменьшили со 100 или более до 35кб gzipped, не говоря про вендор, из которого тоже многое ушло в отдельные чанки
zigzag_ua 2022-06-26 17:12:08
SergeiVakhrushev 2022-06-26 17:02:29
с учетом того что он в вендоре — не вижу причин почему добавление в AppModule bad Practice. Я в вероятностью 90% уверен что проблема в неорганизованных импортах и некорректных чанках. у нас просто такая же проблема с которой мы сейчас разбираемся

хочется, чтобы модуль был модулем, а не тянуть что-то в appmodules только из-за того, что либа дает неудобный механизм, про который я писал с передачей двух рефов.

SergeiVakhrushev 2022-06-26 17:18:37
zigzag_ua 2022-06-26 17:12:08
хочется, чтобы модуль был модулем, а не тянуть что-то в appmodules только из-за того, что либа дает неудобный механизм, про который я писал с передачей двух рефов.

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

SergeiVakhrushev 2022-06-26 17:19:08
у вас похоже тоже, раз лейзи лоад модуль в main чанке
zigzag_ua 2022-06-26 17:19:30
SergeiVakhrushev 2022-06-26 17:18:37
я про это и говорю, я делал тестовый проект, с лейзи модулями, тот же диалог юзал в этих лейзи модулях, в них же импортил что нужно и оно все работало без закидывания в appmodule или каких то изощрений с рефами
вся проблема оказалась с неверными импортами/экспортами

можно еще попробовать import(MyModule).then(()=>{openMyModal()}) сделать

SergeiVakhrushev 2022-06-26 17:19:55
да, но это другая история )
SergeiVakhrushev 2022-06-26 17:21:01
zigzag_ua 2022-06-26 17:19:30
можно еще попробовать import(MyModule).then(()=>{openMyModal()}) сделать

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

zigzag_ua 2022-06-26 17:33:40
мы врапнули MatDialog в свой сервис, только что попробовал использовать просто MatDialog и все заработало… даже инджектор передавать не надо.. раньше вроде не работало, также пробовал менять на MatDialog, может в 14 пофиксили что-то
SergeiVakhrushev 2022-06-26 17:50:32
zigzag_ua 2022-06-26 17:33:40
мы врапнули MatDialog в свой сервис, только что попробовал использовать просто MatDialog и все заработало… даже инджектор передавать не надо.. раньше вроде не работало, также пробовал менять на MatDialog, может в 14 пофиксили что-то

у нас тоже самое — свой сервис

zigzag_ua 2022-06-26 17:54:32
Еще заметил, что у нас импортиться MatDialogModule и в AppModule и в SharedModule, интересно какой оно берет сервис в таком случае
light4everyone 2022-06-26 18:37:10
zigzag_ua 2022-06-26 17:54:32
Еще заметил, что у нас импортиться MatDialogModule и в AppModule и в SharedModule, интересно какой оно берет сервис в таком случае

рандомно выбирает

AlmazeySki 2022-06-26 18:53:12
juice_artur 2022-06-26 13:09:02
https://material.angular.io/components/dialog/overview

Благодарю, получилось)

AlmazeySki 2022-06-26 18:53:22
Всем спасибо 🙂
xuxicheta 2022-06-26 19:14:43
light4everyone 2022-06-26 18:37:10
рандомно выбирает

никогда не слышал чтоб ангуляр что-то рандомно выбирал

st_adzuki 2022-06-26 19:16:51
zigzag_ua 2022-06-26 17:54:32
Еще заметил, что у нас импортиться MatDialogModule и в AppModule и в SharedModule, интересно какой оно берет сервис в таком случае

Ну рандомно он выбирать не будет, скорее всего что первые зарегистрируется

st_adzuki 2022-06-26 19:17:15
И повторно регистрировать не будет и просто скипнет
roni_droni 2022-06-26 19:21:54
У всех stackblitz не работает?
im_anime 2022-06-26 19:22:37
roni_droni 2022-06-26 19:21:54
У всех stackblitz не работает?

все норм

roni_droni 2022-06-26 19:23:02
im_anime 2022-06-26 19:22:37
все норм

У меня никак загрузить не может

HostListening 2022-06-26 19:23:04
roni_droni 2022-06-26 19:21:54
У всех stackblitz не работает?

angular_ru-568572.jpg

st_adzuki 2022-06-26 19:25:36
roni_droni 2022-06-26 19:23:02
У меня никак загрузить не может

Браузер может голову дурит

roni_droni 2022-06-26 19:25:58
st_adzuki 2022-06-26 19:25:36
Браузер может голову дурит

с впн заработало🤔

Bretbas 2022-06-26 20:23:02
angular_ru-568575.jpg
народ, привет
подскажите пожалуйста, в чем я мог ошибиться?

Никак не пойму где тут несоответствие типов

licencetolove 2022-06-26 20:42:36
Bretbas 2022-06-26 20:23:02
народ, привет
подскажите пожалуйста, в чем я мог ошибиться?

Никак не пойму где тут несоответствие типов

merge<T[]>( ?

Bretbas 2022-06-26 20:42:50
licencetolove 2022-06-26 20:42:36
merge<T[]>( ?

ага, да, сделал))

egnmdk 2022-06-26 20:54:10
Добрый день,есть вопрос :использую Angular material но тег <mat-label>,<mat-hint> в компоненте form field не работают,подскажите как решить проблему(версия angular material 13.3.9):<div class=»example-container»>
<mat-form-field appearance=»fill» floatLabel=’always’>
<mat-label floatLabel=»‘always'»>Enter your email</mat-label>
<input matInput placeholder=»pat@example.com»>
</mat-form-field>
</div>
SergeiVakhrushev 2022-06-26 21:00:44
zigzag_ua 2022-06-26 17:54:32
Еще заметил, что у нас импортиться MatDialogModule и в AppModule и в SharedModule, интересно какой оно берет сервис в таком случае

не совсем корректный вопрос — тут не важно где импортируется, важнее что его использует. Например, если SharedModule используется в лейзи модулях и MatDialogModule тоже и в то же время MatDialogModule используется в app модуле (имею ввиду в компоненте который задекларирован в AppModule), то в идеале создастся shared чанк
PS. SharedModule — bad practise

2022-06-26 21:02:51
Всем привет! 3 года занимаюсь разработкой на ангуляре, сейчас стоит задача писать бекенд на работе (команды бекендеров нет, никаких знаний нет, команда занималась только mobile/frontend). Проекты у нас простые, небольшие екомерс приложения. Какую технологию можно выбрать, чтобы команде англярщиков было проще?
SergeiVakhrushev 2022-06-26 21:03:57
2022-06-26 21:02:51
Всем привет! 3 года занимаюсь разработкой на ангуляре, сейчас стоит задача писать бекенд на работе (команды бекендеров нет, никаких знаний нет, команда занималась только mobile/frontend). Проекты у нас простые, небольшие екомерс приложения. Какую технологию можно выбрать, чтобы команде англярщиков было проще?

NestJS

2022-06-26 21:05:10
Разве nestJs это не фреймворк для больших энтерпрайз приложений?
|