2016-07-14 85 views
8

Dears, Le regole d'oro su interazione componente web sono:Angular2: uscita/ingresso Versus Event/ViewChild - le interazioni dei componenti

  • riferimenti controllanti figli diretti
  • bambini non fa riferimento Genitori
  • -> Bambino: via le chiamate di metodo
  • Child -> principale: attraverso eventi

Questo patte Abbiamo lavorato per noi in molti progetti (YUI, JQuery, ...) Che ne è di Angular2?

dovremmo usare:

o Input/Output?

La prima scelta sembra bella. @ angular2 @expert, cosa ne pensi?

Thx a tutti, Gabriel

+0

La mia preferenza personale è l'input/output. Trasmetti i dati al bambino tramite input ed emetti gli eventi che i genitori possono ascoltare tramite l'output. –

risposta

0

penso metodo di servizio sarebbe stato meglio perché so che molte persone trovano familiarità lavorare con questo ed è un buon modo per sentirsi siete in home.If si utilizza tema materiale angolare quindi non è possibile utilizzare direttamente @input()@output() e il metodo @viewchlid per la comunicazione del componente.

0

Dipende dal bisogno. Giusto per essere chiari, Output e events sono gli stessi. Quindi il flusso è abbastanza simile:

  • genitore trasmette i dati al bambino tramite Input
  • bambino passa i dati al genitore tramite Output che EventEmitter

C'è una terza opzione anche il luogo dove è possibile comunicare in entrambe le direzioni da bambino a genitore e genitore a figlio o anche a un componente all'altro. Si sta utilizzando l'iniezione di servizio, in cui il servizio avrà un Subject e il componente che inietta questo servizio può sottoscrivere o aggiornare il valore del soggetto.