Vue Przesyłanie wartości z dziecka do rodzica

Vue Przesyłanie wartości z dziecka do rodzica
abcxyz
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 15
0

Witam, mam pytanie dotyczące przysyłania zmiennych między komponentami. Chodzi konkretnie o https://vuejs.org/v2/guide/components-custom-events.html tylko nie jestem pewny o zastosowanie tego w praktyce.

W dokumentacji jest props, ale czy props nie jest z rodzica do dziecka?
Czy emit wygląda tak $emit('nazwa_eventu', 'wartosc')? Gdzie ten event jest odbierany?

MA
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 644
1
Kopiuj
// custom-button.vue
<button @click="$emit('nazwa', 'wartosc')"></button>
Kopiuj
<custom-button v-on:nazwa="jakis kod który chcesz wykonać po złapaniu eventu o nazwie `nazwa`"></custom-button>

Propsów się używa do modeli, jak chcesz zrobić bindowanie w 2 strony - a jak tylko w górę (do rodzica) to event.

abcxyz
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 15
0

@Markuz: dzięki, wydaje się to proste. Jeszcze tylko pytanie, robię prostą apkę todo list u mnie to wygląda tak:
komponent dodający nowe zadanie
komponent główny
komponent wyświetlający zadania

czyli muszę zrobić dwa emit jeden z pierwszego komponentu do głównego i z głównego do listy, chyba że jest na to inny sposób.

abcxyz
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 15
0

główny template

Kopiuj
<template>
  <div class="home">
    <h1>Home</h1>
    <List/>
    <hr>
    <AddNew v-on:send="newTask"/>
  </div>
</template>

edit:
Dobra już wiem, przecież tam trzeba dać parametr i będize działać.
edit2:
chociaż nie, bo chciałbym tam więcej przesyłać danych niż jedno. czyli jednak emit?
edit3:
znalazłem takie rozwiązanie problemu: https://codesandbox.io/s/mq2yl9lw8p czy takie coś się powinno stosować?

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.