Компонент ангуляр разве не веб-компонент по умолчанию?

|
SergeiVakhrushev 2022-06-27 12:41:32
oligarhe 2022-06-27 12:27:31
Почему не срабатывает ngonChanges при подачи Input?

А почему он вдруг async?

licencetolove 2022-06-27 12:41:40
oligarhe 2022-06-27 12:41:01
у меня задача со стороны пользователя — чтобы он смог передать внутрь какие-то настройки. Встраивая корневой тэк на страницу. Поэтому думал через ipnut

всеравно же он модуль будет подкючать твой

licencetolove 2022-06-27 12:41:54
сделай там метод у модуля для конфигурации
oligarhe 2022-06-27 12:42:09
licencetolove 2022-06-27 12:41:40
всеравно же он модуль будет подкючать твой

нет — он будет использовать уже сбилденный код из dict

oligarhe 2022-06-27 12:42:25
уже как готовый веб-компонент
licencetolove 2022-06-27 12:42:57
так это у тебя веб-компонент у тебя?
licencetolove 2022-06-27 12:43:00
или нет
oligarhe 2022-06-27 12:43:19
licencetolove 2022-06-27 12:42:57
так это у тебя веб-компонент у тебя?

пока что просто ангуляр

licencetolove 2022-06-27 12:43:48
oligarhe 2022-06-27 12:43:19
пока что просто ангуляр

ну если будет веб компонент то будет работать инпут

oligarhe 2022-06-27 12:43:59
компонент ангуляр разве не веб-компонент по умолчанию?
maximeLyakhov 2022-06-27 12:46:45
DDD: куда воткнуть смарт компоненты? в UI либе они как-то не смотрятся
mdafanasev 2022-06-27 12:59:45
maximeLyakhov 2022-06-27 12:46:45
DDD: куда воткнуть смарт компоненты? в UI либе они как-то не смотрятся

В feature модуль?

mdafanasev 2022-06-27 13:00:34
Ну, я не готов за каноничное DDD что-то говорить, на фронте есть своя специфика
maximeLyakhov 2022-06-27 13:09:40
mdafanasev 2022-06-27 13:00:34
Ну, я не готов за каноничное DDD что-то говорить, на фронте есть своя специфика

если этот компонент шарится между фичами?

mdafanasev 2022-06-27 13:13:21
maximeLyakhov 2022-06-27 13:09:40
если этот компонент шарится между фичами?

Раз смарт, значит есть логика. Раз шарится и есть логика — значит шареная логика. А раз так — значит это шаред фича ) Я бы вообще разместил рядом с сервисом, с которым он работает. Но если это у вас строго разные слои, то тогда отдельную шаред фичу сделать )

maximeLyakhov 2022-06-27 13:24:19
mdafanasev 2022-06-27 13:13:21
Раз смарт, значит есть логика. Раз шарится и есть логика — значит шареная логика. А раз так — значит это шаред фича ) Я бы вообще разместил рядом с сервисом, с которым он работает. Но если это у вас строго разные слои, то тогда отдельную шаред фичу сделать )

спасибо за подробный ответ!
ещё: основное приложение подключает удобный scss фарш из тем, мапов, функций и т.п., которым потом пользуются все фичи, в том числе оно само.
это нормально с точки зрения архитектуры или лучше перенести стили в ui либу?

mdafanasev 2022-06-27 13:25:17
maximeLyakhov 2022-06-27 13:24:19
спасибо за подробный ответ!
ещё: основное приложение подключает удобный scss фарш из тем, мапов, функций и т.п., которым потом пользуются все фичи, в том числе оно само.
это нормально с точки зрения архитектуры или лучше перенести стили в ui либу?

scss фарш — это вообще не очень нормально. Но раз уж он есть, то да, лучше в либу перетащить.

maximeLyakhov 2022-06-27 13:31:32
mdafanasev 2022-06-27 13:25:17
scss фарш — это вообще не очень нормально. Но раз уж он есть, то да, лучше в либу перетащить.

там всё красиво, но стилизация с помощью его функций и сгенерированных классов идёт везде

ibrutter 2022-06-27 13:32:27
angular_ru-568730.jpg
Добрый день, помогите пожалуйста.
Подключаю к проекту jest. Написал простенький тест, но не запускается тестирование, падает такая ошибка. Подскажите пожалуйста куда смотреть.
sergei_dev 2022-06-27 13:32:35
maximeLyakhov 2022-06-27 13:31:32
там всё красиво, но стилизация с помощью его функций и сгенерированных классов идёт везде

Звучит как нормальный системный подход к стилям

maximeLyakhov 2022-06-27 13:34:19
sergei_dev 2022-06-27 13:32:35
Звучит как нормальный системный подход к стилям

лучше оставлять в app?

Rommaniel 2022-06-27 13:34:52
oligarhe 2022-06-27 12:43:59
компонент ангуляр разве не веб-компонент по умолчанию?

нет

sergei_dev 2022-06-27 13:35:07
ibrutter 2022-06-27 13:32:27
Добрый день, помогите пожалуйста.
Подключаю к проекту jest. Написал простенький тест, но не запускается тестирование, падает такая ошибка. Подскажите пожалуйста куда смотреть.

В jest.config.js нужно прописать путь к шаред в modulesNameMapper

sergei_dev 2022-06-27 13:36:32
sergei_dev 2022-06-27 13:35:07
В jest.config.js нужно прописать путь к шаред в modulesNameMapper

angular_ru-568735.jpg
как то так

mdafanasev 2022-06-27 13:37:44
maximeLyakhov 2022-06-27 13:31:32
там всё красиво, но стилизация с помощью его функций и сгенерированных классов идёт везде

Я про то, что все эти миксины, мапы и функции — чаще всего, за очень редким исключением, просто избыточная абстракция. Избыточная — в смысле, что её соотношение цена/польза ниже оптимума. Весь CSS код можно написать руками, вынеся в custom properties основные дизайн-токены. И это будет более поддерживаемый вариант, чем построение SCSS-звездолёта. Им просто некому будет управлять, а вместо удобства вы получаете абстракцию, с которой нужно бороться. Исхожу из личного опыта, не исключено, что кому-то удалось поймать баланс и сделать удобные и легковесные абстракции над стилями. Но я пока такого не встречал

ibrutter 2022-06-27 13:40:22
sergei_dev 2022-06-27 13:36:32
как то так

Спасибо, помогло!!!

zigzag_ua 2022-06-27 13:46:34
SergeiVakhrushev 2022-06-26 16:48:33
какие могут быть проблемы:
— компонент импортится в каких то сервисах как напрямую так и нет (следующий пункт)
— использование index.ts файлов в которых объединяются экспорты
— модуль импортится где то еще, что связанно с первыми двумя пунктами
что приводит к неявным импортам всех экспортов вместо одного нужного
как итог — получаем непредсказуемые чанки

Только что наткнулся на еще один нюанс. У нас модалка показывается с дашбордовского виджета. И при изменении размера экрана дашборд перестраивается. При этом виджеты удаляются и берется другой набор виджетов. Получается, что при показанной модалке виджет будет уничтожен и если в модалку передавался референс на виджет, чтоб были доступны импортированные в компоненте-модалке модули, после уничтожения виджета модалка тоже пропадет, но бекдроп останется, т. е. что-то сломается, при этом ошибок в логах нет. Но если передавать просто Injector в MatDialog.open, который появился в 14 ангуляре, то все ок.

maximeLyakhov 2022-06-27 13:53:49
mdafanasev 2022-06-27 13:37:44
Я про то, что все эти миксины, мапы и функции — чаще всего, за очень редким исключением, просто избыточная абстракция. Избыточная — в смысле, что её соотношение цена/польза ниже оптимума. Весь CSS код можно написать руками, вынеся в custom properties основные дизайн-токены. И это будет более поддерживаемый вариант, чем построение SCSS-звездолёта. Им просто некому будет управлять, а вместо удобства вы получаете абстракцию, с которой нужно бороться. Исхожу из личного опыта, не исключено, что кому-то удалось поймать баланс и сделать удобные и легковесные абстракции над стилями. Но я пока такого не встречал

когда руками по 1000 раз забиваются в очередной класс одни и те же настройки флекса или шрифта, сама по себе начинается оптимизация этого процесса. всего-то нужно остановиться в подходящий момент 🙂

adayke 2022-06-27 13:54:06
что означает <> такой знак ?
zigzag_ua 2022-06-27 13:54:18
adayke 2022-06-27 13:54:06
что означает <> такой знак ?

Generic

waterplea 2022-06-27 13:58:13
mdafanasev 2022-06-27 13:37:44
Я про то, что все эти миксины, мапы и функции — чаще всего, за очень редким исключением, просто избыточная абстракция. Избыточная — в смысле, что её соотношение цена/польза ниже оптимума. Весь CSS код можно написать руками, вынеся в custom properties основные дизайн-токены. И это будет более поддерживаемый вариант, чем построение SCSS-звездолёта. Им просто некому будет управлять, а вместо удобства вы получаете абстракцию, с которой нужно бороться. Исхожу из личного опыта, не исключено, что кому-то удалось поймать баланс и сделать удобные и легковесные абстракции над стилями. Но я пока такого не встречал

Ага, единственное, что неудобно с CSS custom properties — делать прозрачность на цвета (

Rommaniel 2022-06-27 13:58:15
Поделитесь пождалуйста ссылкой на пример проекта без пользовательского интерфейса на ангуляре, если существует такой, например пример скрипта, который использует возможности ангуляра: DI, HttpClient…
adayke 2022-06-27 14:04:28
angular_ru-568745.jpg
Ребят здесь типа массив tree$ загружается асинхронно?
armeniancybersoldier 2022-06-27 14:06:19
adayke 2022-06-27 14:04:28
Ребят здесь типа массив tree$ загружается асинхронно?

ага

ngSamurai 2022-06-27 14:07:57
angular_ru-568747.jpg
разве TS не тестит то что юзается как константа, чтобы понять кейс с undefined? потому что если делать ниже то все ОК, а если через константу.. то он тупит и надо делать (this.maxDate as Date) чтобы пропала ошибка
ichursin 2022-06-27 14:11:12
ngSamurai 2022-06-27 14:07:57
разве TS не тестит то что юзается как константа, чтобы понять кейс с undefined? потому что если делать ниже то все ОК, а если через константу.. то он тупит и надо делать (this.maxDate as Date) чтобы пропала ошибка

он просто не может вывести undefined или нет, когда в условии сложное вычисление

ichursin 2022-06-27 14:11:43
Похоже, что нужно подпирать костылем (this.minDate!)
adayke 2022-06-27 14:22:49
armeniancybersoldier 2022-06-27 14:06:19
ага

| — этот знак что означает?

ichursin 2022-06-27 14:23:10
adayke 2022-06-27 14:22:49
| — этот знак что означает?

pipe

kirillsklyarov 2022-06-27 14:32:36
Rommaniel 2022-06-27 13:58:15
Поделитесь пождалуйста ссылкой на пример проекта без пользовательского интерфейса на ангуляре, если существует такой, например пример скрипта, который использует возможности ангуляра: DI, HttpClient…

Ангуляр — это фронтенд-фреймворк. Он не может быть «без интерфейса»

perkthefox 2022-06-27 14:35:38
Rommaniel 2022-06-27 13:58:15
Поделитесь пождалуйста ссылкой на пример проекта без пользовательского интерфейса на ангуляре, если существует такой, например пример скрипта, который использует возможности ангуляра: DI, HttpClient…

Сам понял, что сказал?

Rommaniel 2022-06-27 14:37:01
perkthefox 2022-06-27 14:35:38
Сам понял, что сказал?

Понял конечно. Идея написания «скриптов» с использованием ангуляр фреймворка, с использованием его возможностей, например для запуска по крону.

perkthefox 2022-06-27 14:37:20
Rommaniel 2022-06-27 14:37:01
Понял конечно. Идея написания «скриптов» с использованием ангуляр фреймворка, с использованием его возможностей, например для запуска по крону.

Я подавился сигаретой

>фронтенд фреймворк
>скрипты
>запуск по крону

Вы точно понимаете, с чем имеете дело?

ichursin 2022-06-27 14:37:35
Rommaniel 2022-06-27 14:37:01
Понял конечно. Идея написания «скриптов» с использованием ангуляр фреймворка, с использованием его возможностей, например для запуска по крону.

тогда вы не поняли, что такое angular

ar7ay 2022-06-27 14:38:04
Rommaniel 2022-06-27 14:37:01
Понял конечно. Идея написания «скриптов» с использованием ангуляр фреймворка, с использованием его возможностей, например для запуска по крону.

DI можно и отдельно взять, необязательно ангуляр для этого

RFahreev 2022-06-27 14:38:05
Смотрите nestjs
Vit0s_P 2022-06-27 14:38:05
perkthefox 2022-06-27 14:37:20
Я подавился сигаретой

>фронтенд фреймворк
>скрипты
>запуск по крону

Вы точно понимаете, с чем имеете дело?

Курить нада меньше

perkthefox 2022-06-27 14:38:26
Vit0s_P 2022-06-27 14:38:05
Курить нада меньше

После таких выпадов все сложнее и сложнее бросить

Rommaniel 2022-06-27 14:38:30
perkthefox 2022-06-27 14:37:20
Я подавился сигаретой

>фронтенд фреймворк
>скрипты
>запуск по крону

Вы точно понимаете, с чем имеете дело?

Да, точно. я сделал два приложения на ангуляре и имею 20 лет опыта работы в айти, поэтому я понимаю о чем идет речь.

perkthefox 2022-06-27 14:38:54
Ты хочешь, чтобы я повесился?
|