
Moe
04.01.2018
10:49:16
в компоненте ResultPage есть массив tweets ( уже полный )
я его рендерю списком li на этой же странице
но при клике на любом из li я хочу перейти в другой компонент (страницу) ResultDetailPage и одновременно прокинуть туда текущий объект tweet для более полного рендеринга этого объекта там )

Alex
04.01.2018
10:50:40
Связность большая. Можно сделать ссылку с айди выбранного и там его получать полный. Или из вьюкса доставать

Moe
04.01.2018
10:53:04

Alex
04.01.2018
10:53:44
Локалсторадж

Google

Moe
04.01.2018
10:54:19
не подумал )

Rafael
04.01.2018
11:14:52
https://github.com/vuejs/vue-hackernews-2.0/blob/master/src/api/index.js#L2
https://github.com/vuejs/vue-hackernews-2.0/blob/master/build/webpack.server.config.js#L17
https://github.com/vuejs/vue-hackernews-2.0/blob/master/build/webpack.client.config.js#L13
по мне так это офигенно

Denis
04.01.2018
11:22:54

Rafael
04.01.2018
11:23:42
и ты знаешь, я не могу скзаать, что вот этот ход делает код менее читабельным
т.е я сам так же у себя сделаю, по той причине что мы пишем уже изоморфное приложение, а не только для клиента

Denis
04.01.2018
11:28:53
А какие есть плюсы у SSR, кроме сео и быстрее первая загрузка?

Rafael
04.01.2018
11:35:45
я все еще надеюсь научиться динамически создавать компоненты

Denis
04.01.2018
11:36:25
Это как?

Rafael
04.01.2018
11:37:20
Это как?
приходит пользователь, из его токена разбираются роли, по ролями строится дерево разрешений, в зависимости от дерева разрешений создается компонента из которой выкидывается все то, что не разрешено

b0g3r
04.01.2018
11:37:39
звучит жутко сложно, но задача интересная)

Google

Stanislav
04.01.2018
11:38:05

Rafael
04.01.2018
11:40:04
поток мыслей:
1. было бы неплохо в хуках роутера использовать подгрузку данных
2. исследуя исходники vuetify-webpack-ssr наткнулся на использование vuex-router-sync - т.е мы переносим подгрузку данных из хука роута в хранилище
3. Ну хорошо, давайте посмотрим что там за vuex-router-sync
4. https://github.com/vuejs/vuex-router-sync/blob/master/src/index.js#L31 что? опция sync для вотчера?
5. В доках вью этого нет, зато есть в сорсах:
https://github.com/vuejs/vue/blob/dd21eacc33fee8f8e6151fe1dcb419644f8f98c2/src/core/observer/watcher.js#L166
и так каждый раз

Stanislav
04.01.2018
11:41:01

Rafael
04.01.2018
11:41:20
интерфейс это не только шаблон ведь
причем без использования шаблонов - только рендер функции

Stanislav
04.01.2018
11:42:56

Rafael
04.01.2018
11:43:25
и изменить себе права и видеть интерфейс, который мне не досутпен
конечно, сервер запросы не пропустит, но даже такая инфа это уже больше чем ничего

Stanislav
04.01.2018
11:44:54
Тогда тебе нужно не присыласть код на клиент, если прав нет)

Rafael
04.01.2018
11:45:02

Stanislav
04.01.2018
11:46:06
именно
Тогда собирай разные бандлы под разные роли
Но это ж сколько бандлов будет)

Rafael
04.01.2018
11:46:23
и поверх этого нужно еще на ngix писать дополнение, чтобы оно отдавала только те чанки, которые доступны пользователю с данными правами

Stanislav
04.01.2018
11:48:31
Проще сервером рендерить

Google

Rafael
04.01.2018
11:48:45
нет, не проще, особенно если нужно унифицированное API
server -> удиное api -> клиенты под различными правами
и под разными платформами

Stanislav
04.01.2018
11:49:57
server -> клиенты под различными правами
vue раскрашивает элементы как jq на обычных сайтах

Rafael
04.01.2018
11:50:37
раскрашивает?

Stanislav
04.01.2018
11:51:02
"раскрашивает"

Rafael
04.01.2018
11:51:13
не понял
в каком смысле?

Stanislav
04.01.2018
11:51:25
создает интерактивные виджеты

Rafael
04.01.2018
11:51:36
а не, это не подходит
тебе все равно этим виджетам прдется давать crud
и торчать интерфейсы от других прав все равно будут

Stanislav
04.01.2018
11:52:55
да, но теперь че присылать, будет решать сервер.
А крад то что?

Rafael
04.01.2018
11:53:29
типо если разрешено только чтение - один виджет, если разрешено R + U то другой виджет
если CRUD то третий
и ты не избегаешь колоссального друблирования кода

Stanislav
04.01.2018
11:54:51
Короче, я тебя не понимаю

Rafael
04.01.2018
11:55:26
ну вот смотри, если я возьму виджет, где описан все crud дейтсвия и запрещу часть из них, то из кода они ни куда не денутся

Google

Rafael
04.01.2018
11:55:48
стоит мне сделать инъекцию в состояние компоненты и я могу дать себе нужные мне права

Stanislav
04.01.2018
11:55:48
Не парься, можешь не объяснять.

Rafael
04.01.2018
11:55:55
ок

Nursultan
04.01.2018
12:01:10
Извиняюсь так будет или можно уже делать?

Rafael
04.01.2018
12:01:45
пока что я не встречал таких систем, но моя конечная цель - получить какую-нибудь ее рализацию

Nursultan
04.01.2018
12:02:28
Аа, звучит здорово

Rafael
04.01.2018
12:02:57
но до этого еще далеко
во всяком сулчае пока что я не вижу быстрых способов заставить вебпак как-то кешировать зависимости компоненты

Edward
04.01.2018
12:07:16
requirejs + webpack?

Илья
04.01.2018
12:11:08

Rafael
04.01.2018
12:12:55

Илья
04.01.2018
12:15:59

Rafael
04.01.2018
12:19:28

Александр
04.01.2018
12:39:03
Какой плагин для вебпака сможет все стили из .vue достать в один файл?

Maksim
04.01.2018
12:39:22
естественно проверяет
Тогда профита особо нет запрещать crud на клиенте, просто прятать визуально - должно быть достаточно.

Rafael
04.01.2018
12:39:51
например в банковской сфере

Stanislav
04.01.2018
12:42:59

Rafael
04.01.2018
12:43:29
у разных менеджеров разные права
более того, доступ к систему могут иметь и сторонние компании

Google

Rafael
04.01.2018
12:44:37
торчащие неиспользуемые образения к api это уже не очень хорошо
с другой стороны, можно попробовать абфусцировать код
мне кажется или при использовании ssr по хорошему все динамические данные нужно пихать в vuex, в а состоянии компоненты хранить только открытые, закрытые модалки и прочее барахло?
т.е в компоненте хранится все то, что не относится к отображению непосредственно данных

Alexander
04.01.2018
13:21:28
приветствую. кто использует vue-test-utils, есть идеи как тестировать компонент с инлайновым темплейтом? кучу времени уже потратил, непонятно как передать его в mount, похоже это вообще не предусмотрено

Rafael
04.01.2018
13:29:28

Stanislav
04.01.2018
13:30:32

Alexander
04.01.2018
13:34:26
но и ошибок не пишет
показать код не могу, к сожалению. пусть это будет просто абстрактный компонент с аттрибутом inline-template, где внутри есть какая то логика минимальная
хотя бы просто рендеринг переменной
<comp inline-template>
{{someVar}}
</comp>
и в дате этот someVar
сделал бы песочницу, да как, в данном случае

Stanislav
04.01.2018
13:41:28
Да, че т сходу нет мыслей :\

Alexander
04.01.2018
13:52:20
наверное что то не так с тем компонентом, который тестирую (настоящим) ))

Moe
04.01.2018
13:58:35
это под mocha тест?