
Misha
04.02.2017
19:58:37
Как это передать в виде нормального json?
Не понял

Stanislav
04.02.2017
19:59:32
я тоже
:D

Google

Misha
04.02.2017
19:59:36
Вот как я получаю user : https://gyazo.com/f55c6012f5c27be56f997cd452617248

Stanislav
04.02.2017
20:00:04
это относится к vue-js ?

Misha
04.02.2017
20:00:29
А как, по твоему мнению я это делаю?)

Stanislav
04.02.2017
20:00:45
если да, тогда используй v-bind:
<header v-bind:user="<%= user %>"></header>

Misha
04.02.2017
20:01:36
https://gyazo.com/a0bb7e1471034d007ff2823be0f86944

Stanislav
04.02.2017
20:02:16
и здесь тоже используй v-bind

Misha
04.02.2017
20:02:18
А, вё

Stanislav
04.02.2017
20:02:19
;)

Misha
04.02.2017
20:02:21
всё
Спасибо :)

Stanislav
04.02.2017
20:02:39
заходи еще

Andrey
04.02.2017
20:30:50

Illya
04.02.2017
20:49:57

Google

Igor
04.02.2017
20:52:04
то есть при одних и тех же выходных данных давала один и тот же результат
ну и порядок полей у объектов сохраняла

Kelin
04.02.2017
22:09:28
Бло, геттеры в Vuex не реактивные, да?

Rafael
04.02.2017
22:12:23
Но чтобы они ими были, ты должен использовать только реактивные свойства

Kelin
04.02.2017
22:12:55
Я просто ща в v-model запихал геттер

Rafael
04.02.2017
22:12:59
Например length у array - не реактивное

Kelin
04.02.2017
22:13:05
не
Ааааа
У меня arr.filter()
Оно тоже не реактивно, наверное

Igor
04.02.2017
22:24:57

Emil
04.02.2017
22:54:18
глупый (наверное) вопрос - хочу я, скажем, написать компонент для Vue, на гитхаб выложить, в npm.
при его разработке мне понадобиться Vue как зависимость, но включать ее в собранный билд я не хочу, так как в проектах, куда я этот компонент импортирую, она уже будет. как правильно решить такую проблему? как вы разрабатываете компоненты для последующей их дистрибуции через npm?

Кисик
04.02.2017
22:56:12
"peerDependencies": { "vue": "..." }

Roma
04.02.2017
22:57:32
Те кто юзают твой пакет не импортят твой собранный билд. Они импортят только соответствующий vue или js-файл, который указан в package.json как main

Emil
04.02.2017
23:00:09
Кисик, спасибо. Не подскажешь, через npm cli с каким-нибудь ключом так пакет можно установить?
Рома, то есть собирать компонент вообще смысла нет? И директорию с билдом можно в репозитории игнорировать?

Kelin
04.02.2017
23:00:27
я уж подумал, тут страсти какие-то, а тут реально кисик

Roma
04.02.2017
23:00:39
Кисик, спасибо

Illya
04.02.2017
23:01:56

Roma
04.02.2017
23:02:39

Google

Illya
04.02.2017
23:03:10
тогда там понятие "сборка" очень стремное )

Emil
04.02.2017
23:03:14
и еще один, наверно, еще глупее :) посмотрел я, как разные чуваки структурируют файлы в проектах c Vue - в основном делают отдельные папки с роутером и store. Так вот мне не понравилось, что при таком подходе приходится везде импортировать Vue, чтобы вызвать Vue.use(). Я решил, что у меня в папках этих будут только данные. Сами либы у меня импортируются 1 раз в main.js и применяются там же, а передаются в них импортированные переменные из других папок.
так вот вопрос - есть ли смысл так делать? я наивно полагаю, что чем меньше импортов, тем легче бандл. надеюсь, понятно объяснил

Illya
04.02.2017
23:03:53
нет, на размер бандла это не влияет

Emil
04.02.2017
23:03:55

Illya
04.02.2017
23:04:05
каждый модуль будет включен в проект ровно один раз

Emil
04.02.2017
23:04:23
Вот оно как. Круто) спасибо
а как Webpack понимает, в каком месте надо сделать импорт, а в каком нет? Чем ближе к entry тем приоритетней?

Illya
04.02.2017
23:05:37
что значит "сделать импорт"
импорт это не инлайн файла модуля

Emil
04.02.2017
23:07:39
это я понимаю. видимо, я еще не придумал, как сформулировать вопрос)
главное, что меня интересует это как правильно разрабатывать реиспользуемые компоненты
если я разрабатываю компонент мне нужен Vue, а значит он попадет в бандл. это так?
Роман, мне кажется, вы не правы. Как работают импортируемые компоненты, если package не указывает на собранный файл? Не собираются же они сборкой вашего проекта

Emil
04.02.2017
23:10:48
речь идет об пакетах, установленных в проект через NPM

Roma
04.02.2017
23:10:54
Это же vue-компоненты
Ну например https://github.com/airyland/vux
Или любой другой vue-пакет
main будет указывать почти всегда в импорт-экспорт
Я вообще, не очень понимаю, в чем вопрос
Вы предлагаете каждый vue-пакет собирать с vue.common.js и это импортировать?

Google

Emil
04.02.2017
23:15:15
я не предлагаю, я интересуюсь :)

Roma
04.02.2017
23:16:35
Бибилиотеки, jQuery, или сам Vue, например импортируются собранными обычно, да
Чтобы их можно было использовать сразу импортом скрипта в страницу
Для vue-компонентов такое не нужно

Emil
04.02.2017
23:17:10
вот. вот этого я не знал

Admin
ERROR: S client not available

Emil
04.02.2017
23:21:53
у меня есть еще вопросы, но их надо сформулировать. спасибо, что помогли

Глеб
05.02.2017
07:46:20
Так, ещё одна странная бага. Как я уже говорил, используем шаблоны для компонентов из <script type="text/x-template">. Да, я в курсах, что так не рекомендуется, но сборку прикручивать некогда. Как только мы инитим компоненты, содержимое этих тегов удаяется, точнее теги и прочие HTML элементы заменяется на пробелы, в воздухе остаётся весеть текст. Например, вот так:
ID
Ну и при переходе на другую страницу он опять пытается распорсить шаблон и кидает ошибку о невальдном коде. Как быть и ЧТЯДНТ?

Rafael
05.02.2017
07:56:34
при переходе с одной страницы на другую (router) у компонентов странички, с которй уходим что-нибудь вызывается?
beforeDestroy?

Stanislav
05.02.2017
08:14:06
у роутера есть хуки. В доке описано.

Alex
05.02.2017
09:17:49
гофера нет в паке

Глеб
05.02.2017
09:19:36

Rafael
05.02.2017
09:23:21
в доках что-то не видно, есть только keep-alive но он для динамических компонент

Глеб
05.02.2017
09:23:58
Прикол в том, что зашли мы на страницу по пути '/a'. В JS задали роуты для '/a' : componentA и '/b' : componentB. Компоненты созданны через Vue.component(), в VueRouter переданны. Но когда мы переходим на '/b' он опять пытается вытащить шаблон из тега. А там, как мы помним, пусто.
Есть идея поменять script на div и тупо вытягивать через document.getElementById(), но это так себе решение.

Rafael
05.02.2017
09:25:11

Emil
05.02.2017
09:36:09
Просвятите, что за гофер?

Google

Emil
05.02.2017
09:36:09
гофера нет в паке

Kelin
05.02.2017
09:40:28
Вебпак топчик
Первый раз собрал вебпаком крупный фронт
Прям хорошо

Глеб
05.02.2017
09:41:59

Kelin
05.02.2017
09:44:05
npm i vue-webpack-boilerplate
vue init wepback project
cd project
npm i
npm run dev
2EZ4RTZ
Потом просто
npm run build
и все собралось
Даже не менял ничего в конфигах)

Глеб
05.02.2017
09:44:32
хорошо бы код увидеть
Так, проблема опять решилась в ходе подготовки примера. Теги script с шаблонами попали в область видимости корневого Vue инстанса. До 2.10 вроде бы и так работало, а теперь он их зачем-то распрасил.

Kelin
05.02.2017
09:45:23

Владимир???
05.02.2017
09:47:17
какую-то готовую сборку использовал?

Kelin
05.02.2017
10:01:12
https://github.com/funkyLover/vue-spa
Вот хорошая
Там и Vuex, и vue-router, и vue-resource из коробки
Даже пример рабочий ставится

Stanislav
05.02.2017
10:03:30

Rafael
05.02.2017
10:04:55