Oleksandr
Каждый из них имеет свою ебаную логику
Oleksandr
Запрос мы шлем с формы трансфера
Stanislav
Эммитил события вверх
Oleksandr
С данными трансфера и пользователя
Oleksandr
Эммитил события вверх
Понял. Я забил. Слишком сложная структура. Я начал путаться в эмитах через 3-4 уровня вложенности
Oleksandr
Проще оказалось сделать экшен и ложить ошибки в стейт
Stanislav
Иван
Меня даже один уровень, как в редаксе, сильно напрягает
Oleksandr
Stanislav
Но я понял твой посыл.
Да, в первый мне тоже захотелось юзать вьюкс, чтобы сохранить данные подготовки платежа (id платежного терминала, тип комиссии, список полей и т.д )
Oleksandr
Oleksandr
Там 3 степа
Stanislav
Nikita
твоя форма похожа на мою форму регистрации?
1 шаг собрать данные пользовалтя
2 шаг послать ему письмо по почте и по ссылки перейти на 3 шаги формы
шаг заполнить данные дополнительные
4 шаг получить подтверждения по почте
Oleksandr
Первый высылка
Второй подтверждение
Oleksandr
6 типов трансферов
Stanislav
У нас
1. Подготовка платежа
2. Создание платежа
3. Подтверждение платежа
Stanislav
Как в каком нить киви, например
Stanislav
Oleksandr
Но на самом деле это интернет банкинг с упором на конвертацию и продажу валюты
Oleksandr
Для одного международного банка
Oleksandr
И там до ебени всякой хуйни. Трансферы
Покупка и продажа
Циклические платежи
Сплиты
Оформление карт кредитов и прочей хуйни
Stanislav
Весело)
Oleksandr
И логики очень много.
Поэтому писать все по компоненто (логику)
Мы б охерели.
Поэтому стандартизируем
Oleksandr
И экшен пер апи это идеальный выход
Stanislav
А у меня вот эта форма оплаты в какой-то момент стала нужна как самостоятельный виджет)
Oleksandr
Когда 90% логики и стандартизации ответов с сервера проводится в vuex
Nikita
Это инструмент для управления состоянием приложения
Состоянием приложения.
Говоря об авторизации, фактически, это может быть инкапсулированный от основных компонентов модуль, который и будет возвращать состояние приложения, мутировать vuex.
Точно так же, как модуль HTTP, который, в свою очередь, может быть прикинут в прото приложения или импортирован в эти же actions хранилища.
Oleksandr
А насчёт стандартизации
Не я придумал но используем что то типа
const sendTransfer = async({commit}, payload) => {
const data = Transformer.sendForeign(payload)
const request = await Api.sendForeign(data)
....
Oleksandr
И такие трансформации обрабатывают данные и до высылки и после получения данных.
В них мы парсим данные, заменяем к примеру first_name на firstName и возвращаем стандартизированные данные для дальнейшей работы
Иван
Состоянием приложения.
Говоря об авторизации, фактически, это может быть инкапсулированный от основных компонентов модуль, который и будет возвращать состояние приложения, мутировать vuex.
Точно так же, как модуль HTTP, который, в свою очередь, может быть прикинут в прото приложения или импортирован в эти же actions хранилища.
Ну в общем да, ты можешь прокидывать их как $auth, $http и тыды
Иван
А можешь как $store, который это объединяет
Иван
Может меня просто редаксом контузило, конечно
Иван
Ещё раз скажу, меня просто радует возможность выделить всю жирную бизнес логику в отдельное место и компонентам оставить логику чисто отображения. Это хорошо гармонирует с моим ци
Nikita
А можешь как $store, который это объединяет
просто в этом случае логика модуля (в данном случае – авторизация) смешается с основной логикой состояния приложения.
результаты действий модуля можно отражать в виде его собственных методов / свойств или же, мутировать хранилище (создать поля в стейте, добавить соответствующие геттеры, естественно мутации – их использовать в методах модуля). и дергать уже конкретное состояния в самом приложении из хранилища. или из this.$auth, если он есть в прототипе.
вечный вопрос, вьюксить или не вьюксить)
так же и с работой с api. модуль http, а где дергать эти данные – тоже вопрос. только с парой отличий: http провайдит, как правило, лишь общий метод для запросов (хуки, интерцепторы, например, для этой же авторизации); сами запросы могут быть использованы из различных мест, а могут быть сугубо частными, и это повод задуматься, выносить их в actions или оставлять в конкретном компоненте.
Nikita
Andrey
Ребяты, посоветуйте, как сделать подтверждение удаления как-нибудь по-простому, используя Bootstrap 4
Andrey
bootbox.js гады не обновляются до Bootstrap 4
Andriy
Привет всем. Кто-нибудь скажет в чем преимущество Immutable?
Andriy
Почему нужно к примеру все время возвращать новый state вместо того чтобы его изменять?
Dorian
Andriy
Как это принято у тех кто исопльзует Redux
Andriy
Они все время пишут так :
return {...state, id: someId, first_name: someFirstName}
Иван
Преимущество в том, что ты теперь хипстота
Andriy
А vuex это делается так:
state.id = someId;
state.first_name = SomeFirstName;
Andriy
Не нашел для себя конкретного ответа на этот вопрос
Иван
Ну серьезно, преимущество (единственное!) в том, что по === два deepEqual immutable объекта всегда равны
Nikita
и статьи с хабра не подходят?
Dorian
нет никакого преимущества для вью
я для редакса по другому нельзя
Иван
Можно для редакса, можно
Nikita
https://habrahabr.ru/company/devexpress/blog/302118/
Иван
Ты можешь deepEqual воткнуть вместо === и тогда ваще все равно, иммутабл не иммтабл
Nikita
по итогам статьи можно понять, фичи призрачны, проблем достаточно
Andriy
Можно и с vuex использовать иммутабельность на изи впринципе
Иван
Только смысла ноль, потому что вью завязана на мутабельности
Andriy
Ну да, поскольку об иммутабельности я нигде ничего не нашел. Но это на мой взгляд даже упрощает жизнь
Иван
Именно так. Поверь, старый добрый a.foo = 'bar' куда лучше чем a = a.set('foo', 'bar')
Andriy
Иммутабельности в Vue
Andriy
Кстати, мб кто-нибудь знает, если ли такая штука для VUEX https://i.ytimg.com/vi/yv5RgBiaUNs/maxresdefault.jpg ?
Andriy
vue devtools насколько я знаю такого нет
Andriy
Просто интересно)
Иван
Никогда в редаксе ей не пользовался, кстати
Andriy
Я тоже, но выглядит красиво)
Andriy
Да и на структуру данных можно посмотреть с высоты птичьего полета
Иван
Проще ручками протыкать плюсики, там сразу и сами данные видно
Женя
в vue редакс исользуется?
Andriy
Есть Revux или что-то в таком роде, но насколько это хороший инструмент - хз
Иван
Иван
Ещё во вью не хватало этих тонн бойлерплейта
Женя
+
Женя
я из за редакса реакт не стал смотреть даже
Oleksandr
Oleksandr
да.
Oleksandr
ща поищу
Andriy
Armen
Ребят, гитхаб упал?