Size: a a a

Nuxt.js — русскоговорящее сообщество

2020 November 19

MK

Maxim Kostenko in Nuxt.js — русскоговорящее сообщество
Допусти есть модуль Продукт и модуль Корзина? Как вы добавляете продукт в корзину?
источник

MK

Maxim Kostenko in Nuxt.js — русскоговорящее сообщество
Понятно, что Nuxt не даёт изоляции никакой и всегда можно дернуть Апи из соседнего модуля, но автор статьи предлагает некий кор или шарэд модуль
источник

АБ

Алексей Дмитриевич Б... in Nuxt.js — русскоговорящее сообщество
Maxim Kostenko
Понятно, что Nuxt не даёт изоляции никакой и всегда можно дернуть Апи из соседнего модуля, но автор статьи предлагает некий кор или шарэд модуль
В данном случае вполне можно сделать шо типа gate-way, либо определить взаимодействие через vuex хотя бы, либо должен быть поставщик какой-то этих связей. Но мне кажется на небольших проектах это всё же оверхед.

ИМХО: DDD уместно, когда у тебя именно самодостаточных модулей планируется тьма и есть вариант их переисопльзования, выпилинга в отдельные сервисы
источник

СР

Сергей Рыжков... in Nuxt.js — русскоговорящее сообщество
Алексей Дмитриевич Бубенчиков
В данном случае вполне можно сделать шо типа gate-way, либо определить взаимодействие через vuex хотя бы, либо должен быть поставщик какой-то этих связей. Но мне кажется на небольших проектах это всё же оверхед.

ИМХО: DDD уместно, когда у тебя именно самодостаточных модулей планируется тьма и есть вариант их переисопльзования, выпилинга в отдельные сервисы
++
источник

N

Nano.Karmabot.chat in Nuxt.js — русскоговорящее сообщество
Swell! SurRealistik got +1 from SRyzhkov. 5 karma in total.
источник

MK

Maxim Kostenko in Nuxt.js — русскоговорящее сообщество
Алексей Дмитриевич Бубенчиков
В данном случае вполне можно сделать шо типа gate-way, либо определить взаимодействие через vuex хотя бы, либо должен быть поставщик какой-то этих связей. Но мне кажется на небольших проектах это всё же оверхед.

ИМХО: DDD уместно, когда у тебя именно самодостаточных модулей планируется тьма и есть вариант их переисопльзования, выпилинга в отдельные сервисы
У нас сейчас уже модульная система. Идея была в том чтобы на любом серваке основываясь на env файле ты мог собрать ту или иную конфигурацию. Модули самодостаточны но из-за этого есть немного копи-пасты. Грубо говоря модуль страницы Продукта и модуль Корзины имееют свои собственные сервисы, которые стучатся к одному и тому же апи. В результате модули связанны серверным апи. Для перехода со страницы продукта в корзину мы используем имя роута которое определенно в nuxt.config
По сути такую модульность удобно использовать как фиче-флаг, но не все проблемы так можно решить. Все же обычные фичефлаги нужны. Опять же из-за того, что накст не предоставляет никакой изоляции приходится следить чтобы разработчики не использовали зависимости из других модулей.
Для переиспользования логики опять же появились shared модули, что тоже не так красиво как на схемах. В общем интересно у кого какой опыт в этом плане
источник

АБ

Алексей Дмитриевич Б... in Nuxt.js — русскоговорящее сообщество
Maxim Kostenko
У нас сейчас уже модульная система. Идея была в том чтобы на любом серваке основываясь на env файле ты мог собрать ту или иную конфигурацию. Модули самодостаточны но из-за этого есть немного копи-пасты. Грубо говоря модуль страницы Продукта и модуль Корзины имееют свои собственные сервисы, которые стучатся к одному и тому же апи. В результате модули связанны серверным апи. Для перехода со страницы продукта в корзину мы используем имя роута которое определенно в nuxt.config
По сути такую модульность удобно использовать как фиче-флаг, но не все проблемы так можно решить. Все же обычные фичефлаги нужны. Опять же из-за того, что накст не предоставляет никакой изоляции приходится следить чтобы разработчики не использовали зависимости из других модулей.
Для переиспользования логики опять же появились shared модули, что тоже не так красиво как на схемах. В общем интересно у кого какой опыт в этом плане
а почему api клиент не вынести в отдельный пакет вообще например?
источник

MK

Maxim Kostenko in Nuxt.js — русскоговорящее сообщество
Идея была, что мы можем иметь разные версии апи и типа разные модули могут работать с разными версиями. По факту эта фича не используется так как на бэке версионность не поддерживается. С тех пор концепцию не пересматривали. Пока живём как есть
источник

АБ

Алексей Дмитриевич Б... in Nuxt.js — русскоговорящее сообщество
Maxim Kostenko
Идея была, что мы можем иметь разные версии апи и типа разные модули могут работать с разными версиями. По факту эта фича не используется так как на бэке версионность не поддерживается. С тех пор концепцию не пересматривали. Пока живём как есть
дак на уровне пакета это так же и обеспечаиваетс, версионность сия.

Я описываю сперва все контракты в openapi, после этого фронт и бек пилят параллельно эти модели, а класс с апихой легко паспиливается. Тип такого. В целом ничего не мешает сделать поставщика апи, группировать методы и т.д.
источник

АБ

Алексей Дмитриевич Б... in Nuxt.js — русскоговорящее сообщество
Ррррребят, я тут документацию обновил в ридмях, чекните пожалуйста, кому не лень, стало оно понятнее?

https://www.npmjs.com/package/@alt-point/active-models
источник

D

DK in Nuxt.js — русскоговорящее сообщество
а чо на русском то?)
источник

D

DK in Nuxt.js — русскоговорящее сообщество
(ну да лан)
источник

D

DK in Nuxt.js — русскоговорящее сообщество
Возможно.. стоит до решаемых проблем, описать, какую пользу ты от этого получишь
источник

АБ

Алексей Дмитриевич Б... in Nuxt.js — русскоговорящее сообщество
DK
а чо на русском то?)
Я на русском то хреново тексты пишу, а ты хочешь что бы я на английском их хреново писал? )) Сперва на русском хотя бы формулировка устаканится
источник

АБ

Алексей Дмитриевич Б... in Nuxt.js — русскоговорящее сообщество
DK
Возможно.. стоит до решаемых проблем, описать, какую пользу ты от этого получишь
Ниже польза на конкретном кейсе разобрана
источник

MK

Maxim Kostenko in Nuxt.js — русскоговорящее сообщество
Алексей Дмитриевич Бубенчиков
дак на уровне пакета это так же и обеспечаиваетс, версионность сия.

Я описываю сперва все контракты в openapi, после этого фронт и бек пилят параллельно эти модели, а класс с апихой легко паспиливается. Тип такого. В целом ничего не мешает сделать поставщика апи, группировать методы и т.д.
Чтобы разруливать на уровне пакета, нужно чтобы каждый модуль был пакетом. Это может и правильно, но вносит еще больше сложности и оверхэда
источник

АБ

Алексей Дмитриевич Б... in Nuxt.js — русскоговорящее сообщество
Maxim Kostenko
Чтобы разруливать на уровне пакета, нужно чтобы каждый модуль был пакетом. Это может и правильно, но вносит еще больше сложности и оверхэда
Ага, зависит от задачи конечной
источник

MK

Maxim Kostenko in Nuxt.js — русскоговорящее сообщество
Алексей Дмитриевич Бубенчиков
Ага, зависит от задачи конечной
Вчера смотрел вашу репу а потом нашел такое:
источник

MK

Maxim Kostenko in Nuxt.js — русскоговорящее сообщество
```//shorter version (taken from "You don't know js" book, Kyle Simpson)
let pobj = new Proxy( {}, {
 get() {
   throw "No such property/method!";
 },
 set() {
   throw "No such property/method!";
 }
});

let obj = {
 a: 1,
 foo() {
   console.log( "a:", this.a );
 }
};

// setup obj to fall back to pobj
Object.setPrototypeOf( obj, pobj );

obj.a = 3;
obj.foo();          // a: 3

obj.b = 4;          // Error: No such property/method!
obj.bar();          // Error: No such property/method!
источник

MK

Maxim Kostenko in Nuxt.js — русскоговорящее сообщество
Тут все проще выглядит
источник