
Максим
24.10.2018
15:11:59

Serge
24.10.2018
15:12:02

D0rkD3n
24.10.2018
15:12:24
сейчас посмотрю
не, немного не то

Google

D0rkD3n
24.10.2018
15:15:07
в $store есть объект, и нужно отслеживать изменения его параметров

Hedint
24.10.2018
15:15:13
Так а чем обычный старомодный watch не устроил?

D0rkD3n
24.10.2018
15:15:23
он не триггерится

Hedint
24.10.2018
15:15:38
deep: true ставил? по колесам стучал?

D0rkD3n
24.10.2018
15:16:06
а как в vuex вотчере поставить дип тру?
или ты имеешь ввиду через computed ?

Hedint
24.10.2018
15:16:35
именно это имею ввиду)

Serge
24.10.2018
15:16:48

Hedint
24.10.2018
15:17:33
computed : {
myStoreObj : this.$store.state...
}
watch : {
myStoreObj : {
handler : function (newObj) {
},
deep : true
}
}
что-то вроде этого

Alexey
24.10.2018
15:19:23
Привет, посоветуйте хорошие уроки по vue а также готовые ui kit

The
24.10.2018
15:19:34
ребятки, подскажите, хочу заюзать moment.js, скачал, добавил в компонент. так вообще можно делать? или js код будет дублироваться если компонентов будет несколько?

D0rkD3n
24.10.2018
15:20:11
можно доку почитать, ну а ui kit - vue-bootstrap можно

Google

DimenSi
24.10.2018
15:21:16

Stanislav
24.10.2018
15:21:37

DimenSi
24.10.2018
15:21:43
а фух)

Hedint
24.10.2018
15:22:19

The
24.10.2018
15:23:54


Hedint
24.10.2018
15:26:21
да, у меня vue-cli. вопрос не столько про moment, сколько вообще про любые либы. я просто импортирую нужную либу в компонент и использую её, например тот же tippy. Когда есть годная альтернатива/враппер, я юзаю её, но иногда либо старое, либо не нравится. вопрос в том, чтобы не было какого-то оверхеда в производительности, чтобы там не было кучи целой JS из-за того что мой компонент в списке рендерится.
Ну смотри. вообще всё, конечно, зависит от либы, но обычно бывает так:
Webpack выгружает модуль в одно место в итоговом бандле и потом его оттуда тянет, так что дублирования тут у тебя не будет.
В памяти объект либы тоже как правило один, но тут могут быть уже нюансы, зависящие от разработчика внешнего пакета (наговнокодить можно всякое :) )

The
24.10.2018
15:26:42
окей) спасибо :)
по возможности буду использовать готовые плагины vue.

Hedint
24.10.2018
15:27:58

Максим
24.10.2018
15:28:40

The
24.10.2018
15:29:55
ну я особое говно не тяну, у меня чуйка на это. стараюсь брать только убер-необходимое, и покрывающее мои потребности без избытка. пока что только router + vuex + axios + font-awesome + moment поставил.

Hedint
24.10.2018
15:31:32
Недавно, например, было, мы взяли прекрасный Swiper, со ссылкой на vue-awesome, красивый, с богатым API, 5k звезд на github, запихнули в него 100 элементов.. и он начал вешать страницу при инициализации на 30 секунд :D
https://github.com/surmon-china/vue-awesome-swiper

DimenSi
24.10.2018
15:31:42
ахаах

The
24.10.2018
15:32:43

DimenSi
24.10.2018
15:33:06
свайпер вообще говно, китайские иерогливы невиноваты

Roman
24.10.2018
15:33:45

DimenSi
24.10.2018
15:34:31

Roman
24.10.2018
15:34:55

Google

Hedint
24.10.2018
15:35:11
свайпер говно перегруженное
Я его немного подебажил, ощущение что оно добавляет по одному элементу и ререндерит на каждый этот элемент всё заново, и повторяет это циклом, апдейтится на каждый чих.
Профайлер просто проваливался в постоянный рендер/ререндер.
Взяли потом какой-то обычный скромный swiper без наворотов, звездочек 100-200 штук, все идеально)

DimenSi
24.10.2018
15:35:29
например?
вообще нет нормально работы с duration

Туся
24.10.2018
15:35:52

Hedint
24.10.2018
15:36:06

Znacovean
24.10.2018
15:37:25

Туся
24.10.2018
15:37:28
ага, а то у меня щас больная тема, тоже этот китайский щас воткнула как временный вариант. Вообще просто очень не хочется мобильный свайп писать, так-то на vue карусель сделать легко под свои задачи, если там нет каких-то хитрых вещей в логике и дизайне.

The
24.10.2018
15:38:27

Evgeniy
24.10.2018
15:38:47
Всем привет. Сразу к проблеме: есть скрипт, который я подключаю в html файле, далее во vue компонент вставляю такую строку <div id="yohoho" data-player="moonwalk" :data-title="title"></div>. Как видно есть переменная title (или как она правильно называется?). Если в data в переменную title засосываю имя сериала/фильма, то все прекрасно работает,то есть отображается нужный плеер, Но если я title ставлю null и вызываю метод в хуки created или mounted(и там и там пробовал), который достает из таблицы нужное мне имя сериала/фильма, то есть чтоб все было динамически, то ничего не отображается. Что делать? Вот код

Roman
24.10.2018
15:40:17

Znacovean
24.10.2018
15:41:36
консоль лог тайтла норм выводит ответ от апишки?
у тебя дата неправильно написана

Znacovean
24.10.2018
15:42:50
должна быть data(){ return {}}

Hedint
24.10.2018
15:42:57

Evgeniy
24.10.2018
15:43:21

DimenSi
24.10.2018
15:43:30
оооо, даже описание на русском

Hedint
24.10.2018
15:43:35
ага

DimenSi
24.10.2018
15:43:36
духовная либа

Hedint
24.10.2018
15:43:36
и без тестов
:D

Google

DimenSi
24.10.2018
15:43:42
все по духу
"мамой клянусь багов нет"

Hedint
24.10.2018
15:44:05
возможно автор даже сидит в нашем уютном чатике? ))

Znacovean
24.10.2018
15:44:20
ux у этого слайдера такой себе)
исправь data(){ return { тут своё скопипасть что сейчас }}

Evgeniy
24.10.2018
15:47:09

Znacovean
24.10.2018
15:47:47
фетч в маунтед если?

Туся
24.10.2018
15:47:48

Admin
ERROR: S client not available

Andrey
24.10.2018
15:54:50
В консоли что показывает?
В res что нибудь вообще приходит?

Evgeniy
24.10.2018
16:00:15

Родион
24.10.2018
16:03:32
например?
https://github.com/BBC-News/simorgh/issues/637
вот тут хорошая табличка есть
из того что я сталкивался - там нет часовых поясов к сожалению


Znacovean
24.10.2018
16:05:27
Вопрос знатокам:
Как прокинуть инстанс инсталлятора плагина (объекта с свойством install, потом но вызывается через Vue.use())
компоненту, которого в нём же регистрируем глобально через Vue.component(SomeImportedComponent)?
Пытаюсь сделать инсталлируемый плагин из bundled-версии плагина которого нет на npm;
https://github.com/NxtChg/pieces/blob/master/js/vue/vs-notify/vs-notify.js#L26
там инсталлятор вынесен в переменную
которая потом юзается в самом компоненте в хуке created
https://github.com/NxtChg/pieces/blob/master/js/vue/vs-notify/vs-notify.js#L75
Что сделал я
1) Вынес код компонента в файл vue http://s1.micp.ru/rg4wj.jpg, объект инсталлятора импортирую.
2) Файл инсталлятора выглядит так http://s1.micp.ru/P0367.jpg
3) в main.js импортирую инсталлятор и пишу Vue.use(installer)
по итогу шаблон отрендеривается нормально, ошибок нету, но метод $notify не работает, а точнее он никак ничего не обновляет
видимо из-за взаимного импортирования или ссылочной сущности объекта в js..
Есть какое-нибудь решение компромиссное как можно разбить билд-версию плагина на vue + инсталлер?
Спасибо!


Andrey
24.10.2018
16:06:47
Evgeniy тебе надо чтобы имя сериала менялось?

rddlr
24.10.2018
16:08:06

Юрий
24.10.2018
16:09:04
@riddlr я уже прочитал, что это прошлый век и нужен axios)

Evgeniy
24.10.2018
16:10:17
Evgeniy тебе надо чтобы имя сериала менялось?
Нее... я из запроса axios достаю имя сериала/фильма, и затем резльтутат сохраняю в переменную title, а title равен null. Соотвественно title меняется на заданное значение и должен отправить в эту строку <div id="yohoho" data-player="moonwalk" :data-title="title"></div>, он отправляется, но не отображает плеер, который я долежн получить. Но если не используя axios запрос задать title какое-то значение, то плеер будет отображаться, а мне нужно использовать axios, чтоб отобразить нужный мне сериал

Viktor
24.10.2018
16:16:22
так у тебя плеер походу не вьюшный. и он сам по себе не узнает о том, что значение data-title изменилось. попробуй вызвать какой-нибудь метод апи плеера. update или типа того

Znacovean
24.10.2018
16:18:29
если плейер не вьюшный то после успешного запроса да, надо юзать метод из апи плейера) а ещё если изначально там нулл, и не надо тогглить плейеры, инициализируй сам плагин плейера после того как запрос произошёл

Google

Evgeniy
24.10.2018
16:21:41
Плеер от сервиса yohoho

Roma
24.10.2018
16:21:56
Парни, подскажите как импортнуть файл js в компонент vue
Делаю так import gip from ‘./gip’ gip папка, а в нем js файл лежит

Hedint
24.10.2018
16:22:57

Roma
24.10.2018
16:23:08

Hedint
24.10.2018
16:23:50
и чего? не импортится?)

Roma
24.10.2018
16:24:03

Viktor
24.10.2018
16:25:47
и в index.js есть export, да?)

Alex
24.10.2018
16:25:50
Если у тебя /gip/file.js
То тебе нужно указать import gip from './gip/file'
При условии если внутри нет папки file, тогда указывать расширение не нужно
И module export внутри нужно

Roma
24.10.2018
16:36:27
Парни, спасибо, исправил ошибку, ошибся в названии метода

Speed of
24.10.2018
16:41:18
подскажите пожалуйста, что за хрень, я вообще не могу понять почему он выводит одну и и ту же дату по разному
если выводиться слева, то стринг, если справа, то число
как так вообще лол