
Kelin
15.10.2017
23:43:04
мне интерцепторы не вкатывают
бтв я буду пилить адаптер для axios и там они все же будут

Dmitry
15.10.2017
23:43:40
мне нужно юзать апи lxd а оно несколько упоротое. увы.
так

Google

Dmitry
15.10.2017
23:44:14
келин
а где у тебя фича как в апипай?

Kelin
15.10.2017
23:44:26
https://github.com/apicase/apicase-services

Dmitry
15.10.2017
23:44:30
чтобы декларативно выстроить апишку?

Kelin
15.10.2017
23:44:32
ты об этом?

Dmitry
15.10.2017
23:45:14
url: '', method: 'GET'
зачем, когда можно сразу гет?

Kelin
15.10.2017
23:45:46
Можно дописать фичу)
щас покажу

Dmitry
15.10.2017
23:45:52
не, сейчас у тебя слишком переусложнено
а хандлер на каждый запрос у тебя можно сделать?
у меня просто апишка больного человека
гофера

Google

Dmitry
15.10.2017
23:47:20
и там она возвращает слишком разные данные, которые нужно нормализовать

Kelin
15.10.2017
23:47:59

Dmitry
15.10.2017
23:48:48
у тебя мощно всё, но как-то сложно. Я серьёзно. Слишком много лишнего

Kelin
15.10.2017
23:48:51
Это не усложнение) Apipie заточен только под axios, моя либа позволяет работать с чем угодно, посему я не хочу затачивать под url и прочее
будут у тебя какие-нибудь условные вебсокеты там

Mike
15.10.2017
23:49:26

Dmitry
15.10.2017
23:49:30
кстати есть годные альтернативы axios?

Kelin
15.10.2017
23:49:30
и что
На слуху нет, но я хейчу axios за interceptors

Dmitry
15.10.2017
23:50:40
мне нужен глобальный хук для нормализации всех ответов и "локальный" хук, для нормализации конкретных запросов.

Kelin
15.10.2017
23:51:05
Для этого есть Apicase.of

Dmitry
15.10.2017
23:51:49
а после (т.к. гоферы должны страдать) мне нужно открывать вебсокет соединение и ждать окончания работы.
ах да, перед этим я должен научить js цифры в строки превращать автоматом при жсонофикации. ВЕДЬ В ГО ТАК ПРОЩЕ И МЫ БУДЕМ ТАКУЮ ЕБАНУТУЮ АПИШКУ ДЕЛАТЬ
умирте.
https://github.com/apicase/apicase-core
где ws в адаптерах?
оно сейчас вроде как даже популярнее socketio

Kelin
15.10.2017
23:52:46
Я сейчас одну багу пофиксить хочу
ну уже завтра сделаю это, сегодня уже поздно

Dmitry
15.10.2017
23:53:35
ты кстати джуна на свои рулеточки нашел?

Google

Kelin
15.10.2017
23:54:41
Суть в чем
Несколько раз вызванный Apicase.of().of() багается и кладет в опции не то, что нужно
А Apicase.container как раз вызывает of для каждого
То есть Apicase.of().container() сейчас не робит
Но там мелочь, я пофикшу, просто если что - держу в курсе)

Dmitry
15.10.2017
23:56:10
забавно.
слушай, всё круто, но может тебе не адаптеры сделать в той либе
точнее не так
что если адаптеры вынести в основные отдельные пакеты
тогда ты сможешь фигачить более высокие уровни абстракции и запилить также как в apipie а то и проще
всё равно все эти твои хуки и так далее будут разниться от адаптера к адаптеру

Kelin
15.10.2017
23:57:46

Dmitry
15.10.2017
23:58:15
Object.assign?

Kelin
15.10.2017
23:58:28

Kelin
15.10.2017
23:58:42
В первом это mergeDeep, во втором mergeWith(concat)

Dmitry
15.10.2017
23:59:13

Kelin
15.10.2017
23:59:40

Dmitry
16.10.2017
00:00:28
так ассигн же в глубь тоже мержит

Kelin
16.10.2017
00:00:36
Нет

Dmitry
16.10.2017
00:00:46
> Object.assign({f: 1, g: {a: 33}}, {g:{a:34}})
{ f: 1, g: { a: 34 } }

Kelin
16.10.2017
00:03:03
О.о чет не помню такого, всегда были кучи deepmerge хэлперов
не суть

Google

Oleg
16.10.2017
00:04:36
#whois Салют. Работаю в вебе давно. Сам маркетолог, специализируюсь на соц. сетях.
Умею кодить на php + js, пользуюсь laravel + vue js. До недавнего времени сидел на ангуляре первом.
У меня агентство своё. Где я официально один и переодически на удаленке помогают по коду и всему остальному. Больше времени я делаю рекламу, так что скил в коде растёт медленнее :)
Сейчас конкретно развиваем приложения свои для работы с соц. медиа. Раз-два в месяц сайты пилим клиентам. Вроде все. Зовут Олег, рад знакомству.

Dmitry
16.10.2017
00:05:31
чет у тебя энивей сложнее.

Kelin
16.10.2017
00:05:35

Dmitry
16.10.2017
00:05:50
но лан, завтра я тоже запилю что-то подобное

Kelin
16.10.2017
00:05:54

Dmitry
16.10.2017
00:05:56
мне очень нужно.

Kelin
16.10.2017
00:06:05
Я не про это

Oleg
16.10.2017
00:06:05

Kelin
16.10.2017
00:06:15
base.query тебе не нужно дергать)

Admin
ERROR: S client not available

Kelin
16.10.2017
00:06:40
Apicase.of({ hooks }).container(services)
Вот что тебе нужно
Здесь нет сложности - здесь просто еще один слой абстракции, который ты опишешь один раз в жизни (максимум - один раз в проекте) и будешь радоваться
Запушил фикс в обоих пакетах, если что
Ушел баиньки ?

Rafael
16.10.2017
02:59:34

Alex
16.10.2017
05:17:16
Всем привет. Вопрос такой. Почему теряется реактивность?
computed: {
partnerCart () {
return this.$store.getters.getPartnersCarts[this.index]
},
showOptions () {
return this.partnerCart.showOptions
}
},
В vuex getPartnersCarts поменял в нужном элементе массива значение showOptions, а в компоненте это не отобразилось

Dmitry
16.10.2017
05:25:37
Как поменял?

Alex
16.10.2017
05:28:35
register (partnerCart) {
// Обработчик кнопки "Оформить заказ"
this.$store.commit('setpartnerCartShowOptions', partnerCart)
}

Google

Dmitry
16.10.2017
05:29:17
Это экшн. Мутацию покажи

Alex
16.10.2017
05:29:45
Это вызов мутации, вот мутация:
export const setpartnerCartShowOptions = (state, payload) => {
for (let key in state.partnersCarts) {
if (state.partnersCarts[key].partner_id == playload.partner_id) {
state.partnersCarts[key] = payload
state.partnersCarts[key].showOptions = true
}
}
}

Rafael
16.10.2017
05:31:25

Dmitry
16.10.2017
05:31:26
Vue.set(state.partnersCarts, key, payload)
Попробуй как то так

Alex
16.10.2017
05:32:13

Rafael
16.10.2017
05:32:39
Тебе Дмитрий уже сказал решение

Alex
16.10.2017
05:54:37
Да, не реактивные данные. Но решение Дмитрия не работает, если надо добавить к вложенному объекту значение. Типа так Vue.set(state.partnerCarts[key], showOptions, true)

Michel
16.10.2017
05:55:44
'showOptions' же

Alex
16.10.2017
05:56:36
Vue.set() не добавило реактивности. Вот шляпа. Значит проблема глубже.

Michel
16.10.2017
06:02:56
А до этого у тебя в partnerCarts не существовало свойства showOptions ?

Alex
16.10.2017
06:03:17
Нет

Michel
16.10.2017
06:03:40
Сделай так чтобы существовало ( например showOptions = null)
Иначе vue некуда втыкать свои геттеры и сеттеры

Alex
16.10.2017
06:04:28
А если создавать это свойство в момент создания объекта partnerCarts?

Michel
16.10.2017
06:04:47
ну да

Alex
16.10.2017
06:04:55
state.partnersCarts = payload
for (let item in state.partnersCarts) {
Vue.set(state.partnersCarts[item], 'showOptions', state.partnersCarts[item] ? state.partnersCarts[item].showOptions : false)
}
в момент создания значение undefined
Но это не помогло

Rafael
16.10.2017
06:07:56
Может уже стоит закинуть код куда-нибудь, а?

Michel
16.10.2017
06:09:07
@Fl0pZz так ему его не выкусить / долго выкусывать из проекта походу