169 похожих чатов

Друзья, подскажите по области видимости функций, пожалуйста. Структура: App.vue → Block.vue

→ Products.vue → Product.vue

В конечном Product.vue есть простейший метод для выбора фона элемента.
И теперь в главном App.vue вдруг неожиданно потребовалась та же логика.

Насколько я понимаю, нужно этот метод сделать в App.vue и прокидывать сквозь все три дочерних уровня, добавляя всем в defineProps(). Но это же дичь. Может есть способ из любого дочернего компонента обратиться в переменную/метод высшего компонента?

На всякий случай обозначу, что новичок во Vue.

8 ответов

17 просмотров

provide/inject думаю решит вашу проблему

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

Artyom Tuchkov
если метод никак не связан с инстансом компонента ...

То есть сделать его просто отдельным модулем и импортировать как обычный vue файл?

Artyom Tuchkov
если метод никак не связан с инстансом компонента ...

А если крепко связан с инстансом, то provide/inject,

Константин Салахутдинов
А если крепко связан с инстансом, то provide/injec...

можно рассмотреть, да, но чаще provide/inject юзают для того, чтобы расшарить общий стейт между компонентами, а не для того, чтобы просто провайдить общую функцию точнее можно сказать, если расскажешь подробнее про задачу

Artyom Tuchkov
можно рассмотреть, да, но чаще provide/inject юзаю...

Но ведь функцию можно и в стейт запихнуть? И кстати это отлично, потому что стейт я тоже передаю вниз по компонентам через defineProps() И это как-то некошерно выглядит

Константин Салахутдинов
Но ведь функцию можно и в стейт запихнуть? И кстат...

>Но ведь функцию можно и в стейт запихнуть? смотря что ты подразумеваешь под стейтом и зачем ее туда запихивать, если можно просто провайдить)

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта