@vuejs_ru

Страница 154 из 3900
Roma
10.02.2017
19:13:00
а, ну вроде понятно, можно просто использовать какие-нибудь средства для работы с думом
Как и всегда, все тоже самое. Меняется только импорт модулей.

Rafael
10.02.2017
19:15:15
Как и всегда, все тоже самое. Меняется только импорт модулей.
т.е если я буду в beforeUpdate при появлении новых данных инсертить строчку типо: <my-component></my-component> То я смогу добиться динамически добавляемых компонент?

Roma
10.02.2017
19:16:11
Как ты импортишь модули сейчас? Реквайром?

Rafael
10.02.2017
19:16:50
Как ты импортишь модули сейчас? Реквайром?
погоди, ты путаешь динамические компаненты и асинхронные, последние меня совершенно не интересуют

Google
Rafael
10.02.2017
19:16:54
пока что

Roma
10.02.2017
19:19:47
Что имеешь ввиду под динамическими?

Rafael
10.02.2017
19:21:04
уже 100 раз писал: те, что я могу инсертить в дум, когда угодно, по типу $.append(), а когда станут не нужны - $.remove

допустим мне нужно вывести уведомление, в jquery я просто возьму, сделаю вставочку в дум и получу это уведомление пройдет таймаут и я удалю его

Vlad
10.02.2017
19:26:10
Пардон, а зачем использовать jQuery в vue-проекте чтобы что-то в dom положить? Это как хороший исправный автомобиль поставить на ручник и лошадью пытаться буксировать...

Rafael
10.02.2017
19:27:14
Пардон, а зачем использовать jQuery в vue-проекте чтобы что-то в dom положить? Это как хороший исправный автомобиль поставить на ручник и лошадью пытаться буксировать...
ну, во первых я привел аналогию, чтобы объяснить мое понимание динамических компонент а во вторых jquery не сильно тормозит

Vlad
10.02.2017
19:29:24
А, про динамические компоненты понял. Но и без jquery оно прекрасно может быть реализовано :) А про "не тормозит" - ну лошадь таки потянет же)) другое дело - что это изврат :)

Kelin
10.02.2017
19:29:30
Компонент`ов`

Vlad
10.02.2017
19:51:10
Rafael, если речь о том, что предложенным методом вы подгружаете компоненты, а потом куда-то их рендерите - то на первый взгляд это не сработает. Добавление в dom кастомного компонента вне контекста vue - откуда vue узнает, что вы что-то отрендерили и надо там произвести операции? Но это только мой первый взгляд, могу быть не прав. Что касается задачи - держать компоненты отдельно и при нужде подгружать - есть главный вопрос - это just for fun или сократить размер главного файла сборки, в остальные подгружать по нужде? Если оптимизация размера - то тут лучше с webpack потанцевать в сторону отдельных bundle'во. Но опять же, я немного не в теме вашего желания - зачем и что нужно от динамической подгрузки компонентов.

Влад
10.02.2017
19:51:16
Roma
10.02.2017
19:51:20
уже 100 раз писал: те, что я могу инсертить в дум, когда угодно, по типу $.append(), а когда станут не нужны - $.remove
Это реализуется просто в шаблоне через v-if или подобное. Выкладки не сработают.

Google
Alex
10.02.2017
19:52:10
vue создаст шаблон из дома один раз, дальше работа будет с виртуальным домом

твои изменения в той части dom vue не увидит, можешь на простом примере в jsfiddle проверить

Rafael
10.02.2017
19:53:45
срань карочи, придется костылять :\

Alex
10.02.2017
19:53:49
ты модешь создавать компонент, а маунтить его на дом позже

вот такая динамика

Roma
10.02.2017
19:54:21
срань карочи, придется костылять :\
Что за задача такая, что не известно, какой компонент подключать?

Rafael
10.02.2017
19:55:40
писал же - вывод уведомлений

Roma
10.02.2017
19:56:16
Компонет - уведомление, не?

Rafael
10.02.2017
19:57:39
Компонет - уведомление, не?
именно, и я хотел, чтобы уведомления повявлялись динамически, а не инициализировать в самом начале какое-то количество компонент-уведомлений, а потом показывать и скрывать их

Alex
10.02.2017
19:58:50
стек уведомлений - это массив, добавил туда, новое динамически показалось)

Alex
10.02.2017
19:58:59
у тебя проблема общения между компонентами или что)

Rafael
10.02.2017
20:00:54


я может чего-то не понимаю, но я про вот такие уведомления

я хочу чтобы эта черненькая штучка была компонентой и желательно динамической статической я уже придумал как

Alex
10.02.2017
20:03:31
текст "i am toast" откуда там?

Rafael
10.02.2017
20:04:04
Materialize.toast('i am toast', 4000)

http://materializecss.com/dialogs.html

Alex
10.02.2017
20:04:46
ну блин, ты же понимаешь, что в vue это будет в data?)

я к этому клоню

Google
Rafael
10.02.2017
20:05:00
я уже ору с вас, вы рассказываете очевидные вещи, а не отвечаете на вопрос

Alex
10.02.2017
20:05:34
и это может быть массив объектов, который будет содержать текст, признак показывать его или нет

и ты в него можешь добавлять элементы и убирать

и когда элементов там нет, внезапно уведомлений не будет

Rafael
10.02.2017
20:06:01
я знаю где и как это все хранить, мне нужно было только узнать, как сделать компаненту динамической, по типу, как я уже 100 раз писал выше

Alex
10.02.2017
20:06:05
а когда добавишь, появится

Rafael
10.02.2017
20:06:30
в реакте это можно сделать через вызовы рендер функции, как сделать это тут динамически -я не знаю, поэтому и спрашиваю

Alex
10.02.2017
20:06:32
омг, ну дестрой вызывай каждый раз после, а перед создавай новую

вот и все

Rafael
10.02.2017
20:07:58
омг, ну дестрой вызывай каждый раз после, а перед создавай новую
закроем тему, ты не читаешь вопросы, а отвечаешь на очевидные вещи, которые я уже давно 100 лет наза решил

Alex
10.02.2017
20:08:38
ну да, зеркало кривое, что ж поделаешь

Illya
10.02.2017
20:09:13
Рафаэль, ты можешь динамически создать компонент, добавить его элемент в dom и задать ему parent

И он будет в дереве vue

Illya
10.02.2017
20:09:41
Я так с ячейками таблицы внутри datatables делаю

При уничтожении родителя он сам будет уничтожен

Но вообще странная проблема

Обычно создают toast container

Google
Rafael
10.02.2017
20:10:36
При уничтожении родителя он сам будет уничтожен
но у меня ведь уведомления - пользователь закрыл и дальше мы просто его скрываем, а не удаляем?

Illya
10.02.2017
20:10:47
Который неважно как получает тосты и их рисует

Ими же и управляет

Illya
10.02.2017
20:11:11
Остальное нарушает философию компонент

Компонент не должен сам себя уничтожать, он собой не владеет

Я тебя породил, я тебя и убью - в компонентном подходе только так

Rafael
10.02.2017
20:13:33
т.е допустим если пользователю хотим показывать не более 5 уведомлений, то тру вей, это создать сразу 5 тоаст компанент с v-show="false", а затем показывать когда нужно и скрывать когда не нужно, и так далее?

Admin
ERROR: S client not available

Illya
10.02.2017
20:14:02
Нет

Правильный путь создать toastmanager который будет содержать эту логику и рисовать не более 5 компонент тостов

Rafael
10.02.2017
20:15:03
рисование осущетсвляется посредством других компанент или с помощью инъекций в дум?

Illya
10.02.2017
20:17:18
Других компонени

Rafael
10.02.2017
20:19:03
все, понял, спасибо??

Leonid
10.02.2017
20:55:56
https://github.com/vuejs/Discussion/issues/254#issuecomment-121230063 https://github.com/vuejs/Discussion/issues/247#issuecomment-120363125 https://vuejs.org/v2/guide/components.html#Async-Components https://github.com/vuejs/vue/issues/679#issuecomment-70354185 https://github.com/vuejs/vue/issues/679#issuecomment-257087753

Alexander
10.02.2017
21:08:36
Создаешь простейший компонент. В нем отображаешь первые пять нотификейшенов из стора. Каждые 5 секунд из стора удаляешь самый старый нотификейшен. Когда надо отобразить - пушишь в стор новый нотификейшн.

Асинхронные компоненты это балансировка загрузки приложение. Это не то.

Google
Illya
10.02.2017
21:12:54
Она же code splitting

Alexander
10.02.2017
21:13:20
А как глобально добавить нотификейшен? Через шину?

Ну а ленивая загрузка или код сплитинг это балансировка загрузки :)

Illya
10.02.2017
21:30:59
Да

Неважно как это реализовать, но по сути да

Alexander
10.02.2017
21:32:16
Коллеге нужна конкретика

Stanislav
10.02.2017
22:28:07
2 миллиона загрузок https://github.com/open-source/stories/yyx990803

Illya
10.02.2017
22:32:04
Коллеге нужна конкретика
Дай им рыбу - и они будут сыты один день. Дай им сеть - и они забросают тебя вопросами как правильно конфигурировать сеть, чтоб она приносила устрицы а не рыбу

Oleh
10.02.2017
22:47:30
я вот только знакомлюсь з vue и подскажите пожалуйста как мне правильно вызывать таймер, что бы изменять состояние, например каждую секунду делать i++ в функции рендер?

Stanislav
11.02.2017
01:12:46
не каже

Андрей
11.02.2017
02:20:53
HTML генерируется динамически. На <a href> кликнули и попали в метод onclick. Неужели внутри метода onclick нельзя получить значение аттрибута из HTML, если он не привязан к данным? Например <a href rel="asd">. Как получить внутри метода значение rel?

ну т.е. неужели нет ничего похожего на $(this).attr('rel') ?

Victor
11.02.2017
02:59:28
event.target.attributes

event.target.attributes.href тоже вроде можно

Андрей
11.02.2017
03:07:23
event.target.attributes.href тоже вроде можно
спасибо! Еще tagName, но ничего вменяемого в документации по этой теме не могу найти. Печально что нельзя использовать функции из jquery в связке event.target

говорят в первой версии можно было var clickedElement = event.target; clickedElement).addClass('asd');

Victor
11.02.2017
03:18:47
я бы для управления классами все таки использовал функционал vue для этого

Андрей
11.02.2017
03:19:26
Да я понимаю все... ты прав конечно.

Страница 154 из 3900