Size: a a a

2020 August 21

DS

Dmitriy Shuleshov in ☄️ effector
Dmitriy Shuleshov
Ну вот кейс что вроде сразу вспомнил:

Было две фичи у меня
1. Роутинг
2. user filter
Все было норм пока фильтр хранился просто в LS, потом пришел бизнес и сказал нам нужно фильтр показать в урле. окей.
1. Роутинг из фичи фильтра тянет актуальный фильтр, и сетит квери стринг для определнных уров
2. user filter - это фиче нужна инфа от фичи роутера, которая парсит урл при первичной загрузке для автоматического заполнения фильтра.
Это конечно решается.
Любая циклическая зависимость импортов решается двумя способами:

1. Созданием  еще одной сущности для связи циклически связанных сущностей  (это может быть фича или как у некоторых файл инит на уровень выше сущностей) Это гарантированный способ разрулить, зависимости по импортам так как разруливается экстракцией связей в новую сущность.

2. Развернуть одну из связей, если уверен что цикл только в импортах. (Этот способ может сработать не всегда)
источник

DS

Dmitriy Shuleshov in ☄️ effector
Dmitriy Shuleshov
Это конечно решается.
Любая циклическая зависимость импортов решается двумя способами:

1. Созданием  еще одной сущности для связи циклически связанных сущностей  (это может быть фича или как у некоторых файл инит на уровень выше сущностей) Это гарантированный способ разрулить, зависимости по импортам так как разруливается экстракцией связей в новую сущность.

2. Развернуть одну из связей, если уверен что цикл только в импортах. (Этот способ может сработать не всегда)
Проблема в том что я бы хотел иерархию или зависимости фич отобразить и в файловой структуре проекта, ну конечно до дев тулзов эффектора😁😉Как только Дима сделает это, я тупо буду в папки плоско в src (на самом деле в отдельной типа models) хранить🌚🌚
источник

D

Draft in ☄️ effector
Dmitriy Shuleshov
Проблема в том что я бы хотел иерархию или зависимости фич отобразить и в файловой структуре проекта, ну конечно до дев тулзов эффектора😁😉Как только Дима сделает это, я тупо буду в папки плоско в src (на самом деле в отдельной типа models) хранить🌚🌚
хм хм хм, а вот бы сделать файл в котором явно описываются импортов модулей друг в друга, интересно насколько неявно это будет при разработке модулей?
источник

DS

Dmitriy Shuleshov in ☄️ effector
Draft
хм хм хм, а вот бы сделать файл в котором явно описываются импортов модулей друг в друга, интересно насколько неявно это будет при разработке модулей?
Проблема не в файле как таковом а как эту инфу удобно и внятно отображать для приложений чуть больших туду листа😏
Эта одна из проблем которую решает Дима.
источник

D

Draft in ☄️ effector
Dmitriy Shuleshov
Проблема не в файле как таковом а как эту инфу удобно и внятно отображать для приложений чуть больших туду листа😏
Эта одна из проблем которую решает Дима.
НУ так я и говорю, что-то типа yaml файла с зависимостами модулей или как package-lock
источник

DS

Dmitriy Shuleshov in ☄️ effector
Draft
НУ так я и говорю, что-то типа yaml файла с зависимостами модулей или как package-lock
Что дальше с этим файлом делать?
источник

DS

Dmitriy Shuleshov in ☄️ effector
Draft
НУ так я и говорю, что-то типа yaml файла с зависимостами модулей или как package-lock
источник

D

Draft in ☄️ effector
Dmitriy Shuleshov
Что дальше с этим файлом делать?
Отдавать его какому-нибудь DI который будет прокидывать модули
источник

D

Draft in ☄️ effector
Стоп, в ангуляре кажется так сделали = )
источник

DS

Dmitriy Shuleshov in ☄️ effector
Draft
Отдавать его какому-нибудь DI который будет прокидывать модули
Для меня DI пока какая то загадочная шляпа
источник

D

Draft in ☄️ effector
Dmitriy Shuleshov
Для меня DI пока какая то загадочная шляпа
Почитай про модули и shared-модули в ангуляре, у них там интересные идеи есть. МОжет вдохновишься на что-то/чем-то
источник
2020 August 22

🦜

🦜 in ☄️ effector
Dmitriy Shuleshov
Для меня DI пока какая то загадочная шляпа
Кароче DI это когда у тебя есть какая-то глобальная область видимости со всякими там данными, сервисами, функциями и ты можешь из инжектнуть в любое место приложения
источник

DS

Dmitriy Shuleshov in ☄️ effector
🦜
Кароче DI это когда у тебя есть какая-то глобальная область видимости со всякими там данными, сервисами, функциями и ты можешь из инжектнуть в любое место приложения
esm это DI выходит?
источник

🦜

🦜 in ☄️ effector
Dmitriy Shuleshov
esm это DI выходит?
Не совсем
источник

DS

Dmitriy Shuleshov in ☄️ effector
🦜
Не совсем
По каким критериям DI "не совсем"?
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
Dmitriy Shuleshov
Для меня DI пока какая то загадочная шляпа
service dependency можно представить как какой-либо юнит эффектора, через который модуль получает информацию от подключённого к нему источника
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
то есть это ортогональные способы выразить одну и ту же идею
источник

m

makoven in ☄️ effector
Dmitriy Shuleshov
По каким критериям DI "не совсем"?
Сервисы подменять труднее)  В di на один путь можно прикрепить разные штуки, в зависимости от конкретных нужд. А в ес импортах только файлы менять
источник

m

makoven in ☄️ effector
А, кстати, идея! Подсовываешь симлинк типа ./auth_service.ts с нужной реализацией. Который указывает, например, на ../services/auth/jwt.ts
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
makoven
Сервисы подменять труднее)  В di на один путь можно прикрепить разные штуки, в зависимости от конкретных нужд. А в ес импортах только файлы менять
в  эффекторе встроеный механизм для замены имплементации эффектов https://t.me/effector_ru/156390

https://effector.now.sh/docs/api/effector/fork#arguments
источник