
Иван
20.06.2018
18:10:15
Задача просто извратная немного, вот и решения в тон получаются

DimenSi
20.06.2018
18:10:29
6-7
но и задача довольно естественная, когда пытаешься закрутить какую-ту либу в компонент.

Grigorii
20.06.2018
18:11:08

Google

Иван
20.06.2018
18:11:35
Например, можно вешать эти объекты каруселей в статический массив на компонент и доставать из оттуда по айдишнику
MyComp.instances.thirdSjit.superMethod()

Grigorii
20.06.2018
18:13:17
Интересная идея

Иван
20.06.2018
18:13:23
Айдишник через пропсы кидается как обычно
Надо в кукбук кинуть тогда
Как миксин норм зайдет думаю

DimenSi
20.06.2018
18:16:26
можешь собрать все, что ты написал в 1 сообщение

Иван
20.06.2018
18:16:36
Нет
Я с телефона вообще

DimenSi
20.06.2018
18:17:49
ну ок, мы придумали еще один способ как наговнокодить
О великий Эван, просвяти нас.

Иван
20.06.2018
18:19:18
А кстати чтобы не лохануться с маунтом можно сделать допметод который как раз и промизит пока компонент с нужным айди не подмаунтится

Google

Grigorii
20.06.2018
18:19:29
А раз уж тут придумывают решения сегодня, можно вопрос ?)
С vuex опыта мало.
Допустим, есть некоторый компонент достаточно большой, с иерархией дочерних компонентов.
И, так как достаточно больй компонент, работает это дело c vuex.
Затем требуется использовать этот компонент в другом месте.
Проблема в том, что обычно vuex подключал ко всему приложению vue, а не к конкретному компоненту.
Что делаю не так?

DimenSi
20.06.2018
18:19:54

Иван
20.06.2018
18:20:02
XD

Grigorii
20.06.2018
18:20:29

Иван
20.06.2018
18:20:47

Stanislav
20.06.2018
18:21:26

DimenSi
20.06.2018
18:22:08
из вопроса не видно проблемы

Иван
20.06.2018
18:22:24
Как переиспользовать завязаные на вьюкс компоненты
Если коротко — сложно

DimenSi
20.06.2018
18:22:51
оооо, я видел кажется плагин какой-то
который позволял делать такие штуки
ну точней плагин типо коннетил компонент с vuex

Иван
20.06.2018
18:23:16
Для жиквери?)

DimenSi
20.06.2018
18:23:24
работало как в redux

Grigorii
20.06.2018
18:24:46
Как у меня сейчас:
new Vue({
store,
components: {
someComponent
}
})
В someComponent и компонентах, которые используются в нём, активно используется store.
Но потом этот someComponent стало нужно использовать в другом месте, в другом vue app.
Пока решение вижу одно: это делать один store для обоих приложений, но теряется концепция переиспользования компонента.
В идеале бы хотелось уметь подключать store к компоненту, а не к приложению

DimenSi
20.06.2018
18:24:49
https://github.com/ktsn/vuex-connect

Иван
20.06.2018
18:24:54
Я так понял что нужен инкапсулиррванный вуйх

Grigorii
20.06.2018
18:27:06

Иван
20.06.2018
18:27:19
Немного не то

Эдуард
20.06.2018
18:27:34
ребят

Google

Эдуард
20.06.2018
18:27:34

Иван
20.06.2018
18:27:45
Надо что б стор был индивидуальный для компонента

DimenSi
20.06.2018
18:28:46
на основе provide и inject

Grigorii
20.06.2018
18:29:55
Если кратко, то вопрос сводится к тому, как переиспользовть компонент, которому нужен vuex для работы.
Например, есть компонент "супер-пупер калькулятор", он большой, используется много компонентов (поля ввода, рисовалки, кнопки, панельки, параметры) и общий стор для всего дела.
Захотелось разместить на странице 4 калькулятора, а ещё прокинуть калькулятор в другое приложение как компонент.
Конкретно у меня старая задача, про которую писал тут.
Есть платформа по типу гугл-форм.
Форма - большой компонент с компонентами и стором.
Далее хочется:
1. Уметь легко вставлять форму в другие места.
2. Уметь делать "админку", "конструктор" формы, демонстрируя результат всё на том же компоненте

Иван
20.06.2018
18:32:23
https://forum.vuejs.org/t/encapsulating-nested-vuex-stores/5946

DimenSi
20.06.2018
18:32:38

Grigorii
20.06.2018
18:33:17

Иван
20.06.2018
18:34:11
Вообще, вроде бы любой компонент вью может выступать в роли корневого в дереве

DimenSi
20.06.2018
18:34:14
ну я думаю в самом компоненте

Иван
20.06.2018
18:34:28
И значит на него можно навешать стор
Но как именно это сделать, я чет хз

DimenSi
20.06.2018
18:35:02

Grigorii
20.06.2018
18:35:55

Иван
20.06.2018
18:36:36
https://github.com/vuejs/vuex/issues/1172

DimenSi
20.06.2018
18:37:57
во
https://github.com/Kelin2025/nanux
kelin заморачивался тем, как сделать стор только в определенном компоненте и чтоб все дети получили к нему доступ

Google

DimenSi
20.06.2018
18:38:52
хотя походу он так и не смог это сделать?)

Grigorii
20.06.2018
18:39:53

DimenSi
20.06.2018
18:40:18
короче, я надеюсь мою идею поняли, создать мини стор и прокинуть его в provide, и у нужных детей делать inject store

Grigorii
20.06.2018
18:40:28
Я правильно понял, что я ненормальный, и обычно не делают переиспользуемые store зависимые/включащие компонеты?)

DimenSi
20.06.2018
18:40:42

Иван
20.06.2018
18:40:52
Ну вообще идея норм

Admin
ERROR: S client not available

Иван
20.06.2018
18:41:06
Если компонент реально сложный, чего бы нет
Просто мб его лучше делал как отдельное приложение прямо

DimenSi
20.06.2018
18:41:30
если бы я так решал, я бы обошелся бы обычным обьектом, а не делал пытался цепляться за стор

Grigorii
20.06.2018
18:41:41
норм тема, просто кейс специфичный
Просто, когда я только начинал изучать vue на уровне однофайловых компонентом, мне понравилась в нём именно эта идея, что есть компонент, и в нём есть всё, что нужно для его работы, и его можно переиспользовать как нечто монолитное

DimenSi
20.06.2018
18:42:48
но я имел ввиду прокинул бы обьект в provide

Grigorii
20.06.2018
18:43:21
Это понял)
Спасибо
Я придумал ещё дурацкий вопрос
Есть практика сборки vue компонентов в самостоятельные "виджеты" для их интеграции далее в любой сайт?
Пример:
1. Делается редактор графов, например, как компонент (или js скрипт, не суть).
2. Собирается в GraphEditor.js
3. На левом сайте создаётся блок div#myApp
4. new GraphEditor('#myApp', {graphData})
5. На левом сайте в блоке div#myApp теперь отображается редактор графов, который работает с объектом graphData
Или бред?)

Bohdan
20.06.2018
18:49:52
я делал подобное, не совсем так

Google

Bohdan
20.06.2018
18:50:05
но это по причине отсутствия возможности сделать сразу спа

Grigorii
20.06.2018
18:52:37
Делаю некоторый редактор, который далее потребуется использовать как библиотеку для подключения именно к левым сайтам.

Bohdan
20.06.2018
18:57:54
у меня аппка собирается отдельно, затем симфони отдает страницу с соответственным дивом и подключёнными файлами аппки
твой вариант тоже должен работать, думаю

Grigorii
20.06.2018
18:59:54
Понял, спасибо)

Fil
20.06.2018
19:21:11
github pages может отправлять get post запросы?

Bohdan
20.06.2018
19:22:16

Fil
20.06.2018
19:23:24

Bohdan
20.06.2018
19:23:37
из js - да

Stanislav
20.06.2018
19:33:56

Fil
20.06.2018
19:36:25

Stanislav
20.06.2018
19:37:06

Fil
20.06.2018
19:37:23
апи кей и вперед

Stanislav
20.06.2018
19:38:29

Vladyslav
20.06.2018
20:34:20
Народ, такой вопрос. Человек выделил текст, кликнул на любой элемент на странице, пусть какой-то див
можно ли сделать чтобы при клике выделение текста не спало?
если да, - то как?

Глеб
20.06.2018
20:37:08
запоминать выделение при изменении выделения
после клика - восстанавливать выделение

Vladyslav
20.06.2018
20:37:42
мигает(
я вижу как сделано в гугл почте
там все айс((
как буд-то запривентили отмену

Глеб
20.06.2018
20:43:07
ну не знаю
быть может если добьешься что клик по диву не будет снимать фокус, тогда можно будет даже по координатам вычеслить клик по области и запустить нужное действие