@vuejs_ru

Страница 637 из 3900
Anatoly
29.06.2017
10:20:13
А есть какое-нибудь событие, когда компонент получает пропсы?

DASTAN
29.06.2017
10:20:18
пабсаб

Kelin
29.06.2017
10:20:19
А вотчер норм зайдет

Вишневый чай
29.06.2017
10:20:29
события вообще как хочешь можешь)
т.е. ты хочешь сказат ья могу сделать эмит в родителе и словить его в ребенке?

Google
DASTAN
29.06.2017
10:20:51
и наоборот тоже

Вишневый чай
29.06.2017
10:21:23
ой не спасибо )

Макс
29.06.2017
10:21:23
зачем так сложно

Kelin
29.06.2017
10:21:31
Вотчер

Сделайте

Господи

Макс
29.06.2017
10:21:55
при вызове компонента добавить обработчик типа @doIt="doit"

DASTAN
29.06.2017
10:22:04
ну по сути вотчер это и есть событие, просто у него скоуп привязан к компоненту

Макс
29.06.2017
10:22:07
а внутри this.$emit('doit')

в родителе разумеется функция doit в методах

Вишневый чай
29.06.2017
10:22:49
а внутри this.$emit('doit')
Максим, читаем внимательней

Google
Макс
29.06.2017
10:23:28
ну так в функции doit меняем пропсы чайлда

или задача не пробросить эмит в чайлдовый компонент?

Вишневый чай
29.06.2017
10:24:47
так я ссейчас попробую вьхать что вы предложили

DASTAN
29.06.2017
10:25:41
к примеру родитель отдает ребенку проп $name

ребенок играется им

а потом вдруг $name поменялся

и ты хочешь чтобы ребенок узнал об этом?

Stanislav
29.06.2017
10:26:48
Вобщем-то в случае с реактивностью её проще всего написать с нуля самому и тогда человек поймёт как она работает в vue навсегда
как хорошо что есть бумажная дока и это читается за три минуты https://skyronic.com/blog/vuejs-internals-computed-properties оказывается компутед очень просто работают, просто трекают впервый раз что спрашивается, хотя если в компутед есть if это скорее всего работать не будет. я почему то всегда думал что там подход взять тело функции распарсить его аст и пройтись по всем декларациям в надежде что можно чтото увязать

Вишневый чай
29.06.2017
10:27:16
и ты хочешь чтобы ребенок узнал об этом?
да,суть вы поняли, сложность в том, что проп с которым играется ребенок это геттер родителя

Вишневый чай
29.06.2017
10:28:11
не, это метод

DASTAN
29.06.2017
10:28:14
or computed getter?

Вишневый чай
29.06.2017
10:28:22
method

DASTAN
29.06.2017
10:28:39
здесь не понял, можно подробнее

что он делает?

DASTAN
29.06.2017
10:29:13
есть хук updated()

попробуй им поиграться в ребенке

Google
Kelin
29.06.2017
10:32:02
Хоспаде, почему у вас все так сложно

DASTAN
29.06.2017
10:32:19
А есть какое-нибудь событие, когда компонент получает пропсы?
как упомянул @c01nd01r , можешь заюзать при создании компонента created()

Вишневый чай
29.06.2017
10:32:22
что он делает?
все просто, у родителя есть такой метод, getState(id), который при вызове роется в data родителя, находит там нужный объект по id и возращает этот обьект. А теперь я беру этот метод и кидаю в пропс всем детям по цепочке в рекурсии. Любой ребенок, может вызвать этот геттер родителя из своего Props со своим id получить что ему нужно. Все отлично работает если я вызывают этот геттер по какому-нибудь ивенту, скажем клику по ребенку

Вишневый чай
29.06.2017
10:33:19
но мне надо как-то привязатся к событию мол - дети мои, у меня тут все поменялось, нука все юзаните геттер

Макс
29.06.2017
10:33:36
если внутри чайлда нужно узнать, что поменялся проп, почему бы не повесить компутед?

Kelin
29.06.2017
10:33:42
Да это ппц какой-то, говоришь, как можно сделать, не городя костылей И один хер начинают городить их, все глубже и глубже закапываются, потом начинают лезть в доки, в гугл, в книжки, вы чо угораете

Kelin
29.06.2017
10:34:15
И в итоге придут все равно к тому, что я написал в самом начале Проверяй

Вишневый чай
29.06.2017
10:34:18
там лежит себе геттер

Squall
29.06.2017
10:35:03
Вишневый чай
29.06.2017
10:35:09
не отрабаывает вотчер если его вешать на пропс с методом ну елки палки

Макс
29.06.2017
10:35:14
потому что проп то не поменялся
а надо узнать из чайлда что у родителя data поменялась?

Stanislav
29.06.2017
10:35:21
вобщем норм https://forum.vuejs.org/t/how-vuejs-knows-the-dependencies-of-computed-properties-for-caching/4945

извините я о своем. if таки будут работать

Вишневый чай
29.06.2017
10:35:37
а надо узнать из чайлда что у родителя data поменялась?
да, при условии что эту дату я в чайлда не пробрасываю (т.е. не реактивно связаны)

Вишневый чай
29.06.2017
10:36:05
Пропс с методом - шта?
вот теперь доходит

Google
Kelin
29.06.2017
10:36:14
Каким методом

Squall
29.06.2017
10:36:23
родительским)

Kelin
29.06.2017
10:36:26
Вы функции передаете в пропсах?

Вишневый чай
29.06.2017
10:36:30
да

DASTAN
29.06.2017
10:36:32
вот теперь доходит
ты хотел метод сделать глобальным для всех детей

Kelin
29.06.2017
10:36:35
Пиздец.

Squall
29.06.2017
10:36:39
так делать нельзя

Kelin
29.06.2017
10:36:39
Клиника

Admin
ERROR: S client not available

Вишневый чай
29.06.2017
10:37:06
Клиника
ну тут честно говоря по другому хз как

DASTAN
29.06.2017
10:37:14
да
ты юзаешь Vuex?

Вишневый чай
29.06.2017
10:37:22
нет

DASTAN
29.06.2017
10:37:23
облегчает многое

централизовано все

и как раз методы для всех доступны

Squall
29.06.2017
10:37:40
а тут похоже на случай когда надо бы юзать

DASTAN
29.06.2017
10:37:42
и данные тоже

Вишневый чай
29.06.2017
10:37:55
блин ради одного компонента вуекс тащить

DASTAN
29.06.2017
10:38:04
он быстро ставится

Google
DASTAN
29.06.2017
10:38:08
без проблем

Макс
29.06.2017
10:38:11
ну если дочерних компонентов много, тогда да, vuex самое то, а если он один, то это как из пушки по воробьям

Вишневый чай
29.06.2017
10:38:41
их много да, засада в том что они еще и рекурсивно друг в друге

Kelin
29.06.2017
10:38:45
Блин рекурсивные компоненты с методом в пропсах, который нужно вотчить, у вас все хорошо? Точно?

DASTAN
29.06.2017
10:38:57
создаешь один файл хранилище

DASTAN
29.06.2017
10:39:05
регистрируешь его в мейн джс

и юзай в любом компоненте

Макс
29.06.2017
10:39:35
Kelin
29.06.2017
10:40:01
Буду советовать подумать ещё раз

Над архитектурой

DASTAN
29.06.2017
10:41:03
в твоем случае Ивенты помогут, если ты не хочешь Вюекс

Kelin
29.06.2017
10:41:10
До чего иногда люди доходят

Что самое страшное, после них потом устраиваешься на работу и все это потом переписываешь

@check="check"

DASTAN
29.06.2017
10:42:19
элемент юай?

element-ui

Вишневый чай
29.06.2017
10:43:31
element-ui
чет не вижу там такого

а все, нашел

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