Stanislav
чем смогу как говорится
я вот шас смотрю vue-hackernews-2.0. Собственно, там все через vuex и делается...
Павел
https://jsfiddle.net/belanchuk/k1a4hj73/
Чую, что ты чего то там изменил, но не сохранил..? У меня мой код открылсяю..
Roman
я вот шас смотрю vue-hackernews-2.0. Собственно, там все через vuex и делается...
Vuex это реализация Flux, а в флаксе у нас есть Стор, а в стор мы пихаем данные, которые делят меж собой разные компоненты, т.е. это в некой степени Root Scope
Anonymous
Можно вопрос про вебпак, а?
Завтра
я вот шас смотрю vue-hackernews-2.0. Собственно, там все через vuex и делается...
там, скорее всего, скажем так, единственный productgrid во всем проекте
Roman
Flux по сути решает проблему "синхронизации" мутаций Root Scope'а, но root scope нужно в принципе избегать по возможности и энкапсулировать данные
Anonymous
Почему ошибка в консоли cannot find module uglify js? Его разве надо устанавливать?? Он же с вебпак ом идёт
Stanislav
Denis
Что посоветуешь?
https://jsfiddle.net/Piterden/k1a4hj73/1/
Stanislav
?
Anonymous
Нет не кли, я сам собираю
Roman
Я просто не вижу ни в доке, ни в примерах загрузки данных на сервере в локальный стейт компонента
в примере Hackernews 2.0 реализована таки асинх. подрузка, но там походу одна трабла: работает asyncData только на компонентах Router'а
Павел
https://jsfiddle.net/Piterden/k1a4hj73/1/
Не работает же..?
Anonymous
Разве?
Ну да. webpack.optimize.UglifyJsPlygin. разве нет??
Павел
Что?
Кнопка pause не останавливает setInterval
Roman
о чем я и говорю - поэтому и юзают vuex
эмм, тут же Vuex совершенно непричём? asyncData и без Vuex работает
Stanislav
эмм, тут же Vuex совершенно непричём? asyncData и без Vuex работает
Да, но данные, которые они получают в asyncData хранят в сторе
Denis
Roman
Да, но данные, которые они получают в asyncData хранят в сторе
по сути не обязательно, можно и в scope'е самого компонента хранить, Store как я уже говорил нужен тогда, когда это global entity, т.е. кусок данных доступный всем компонентам приложения
Denis
Да просто сделай сначала
Anonymous
Разве?
Или что вы имели. Ввиду?
Denis
Потом будешь заморачиваться
Завтра
устанавливать
Завтра
разумеется
Anonymous
Сука какой же вебпак мерзостный, ненавижу это дерьмо
Ербол
юзай тогда роллап
Павел
Anonymous
разумеется
Почему в вью кли не установлен и работает
Denis
Работает! 🤝
Вслепую захерачил ))
Anonymous
В доках тоже Разумеется не надо устанавливпть
Stanislav
по сути не обязательно, можно и в scope'е самого компонента хранить, Store как я уже говорил нужен тогда, когда это global entity, т.е. кусок данных доступный всем компонентам приложения
Это в клиентском SPA. На сервере могут быть нюаны. Окей, ты пробовал получить данные в asycData, закинуть их в data компонента и отрендерить по этим данным компонент?
Павел
Вслепую захерачил ))
мнеб такую же слепоту! )
Denis
мнеб такую же слепоту! )
Какие твои годы )))
Павел
Какие твои годы )))
да, в js мне очень мало лет. ))
Anonymous
разумеется
Покажи мне пример в доках где установлен этот модуль. Он там идёт в вебпак в поимерах
Anonymous
Так и знал что в дискорд с вопросами, тут только спорить надо в чате)))
Stanislav
ща попробую, но чисто теоретически должно сработать
Хотя, собственно, какая разница, если asyncData работает только в компонентах-страницах роутера...
Stanislav
Отсюда и вывод, чтоб не устраивать "водопад данных" их пропсов, нужно юзать Vuex
Denis
А я люблю водопады
Stanislav
Но это в компонентах такая муть получается.. Вот тут у нас логика получения данных на сервере, а вот тут на клиенте..
Denis
Stanislav
Опять же, без Vuex не обойтись, ибо нам нужно как-то синхронизировать состояние роутера и приложения в целом
Stanislav
data рут компонента чем плоха?
Ты руками собрался рулить состоянием роутера, когда есть плагин из коробки?
Denis
Ты руками собрался рулить состоянием роутера, когда есть плагин из коробки?
Ты че стас? Пропсы пихаешь все в шаблоне, а на компонентах-роутах только те что нужны здесь
Denis
Вот и фсе
Stanislav
ой все
Roman
вот небольшая визуализация:
Roman
Roman
страницы - все поголовно Smart компоненты, всё что ниже - дуб-дубом
Roman
Stanislav
получается так
Завтра
о, это ты где такое рисуешь
Stanislav
красиво, да)
Denis
Первый беру
Roman
однако почему-бы не предоставить возможность компонентам быть умными?
Завтра
хм
Завтра
я такого оформления там не видел
Завтра
ща посмотрю
Roman
Проблема вот с этим, в том, что Page отвечает за абсолютно все данные и всю логику, это как-бэ не самый лучший способ модуляризации приложения...
Roman
а тут каждый компонент отвечает ровно за то что нужно
Завтра
Гайс, а есть десктопный вариант draw.io? Видел только расширение для хрома, но оно тупо грузит сайт
Stanislav
однако почему-бы не предоставить возможность компонентам быть умными?
Они умными потом на клиенте могут стать 😄 А вообще, может где-то сложность с этим есть. asyncData выполняется до рендера. А если asyncData будет доступен в любом компоненте, то это надо по всему дереву идти и искать/собирать вызовы к api