title: '[react]深刻 - 一等公民 props & onChange'
date: 2017-08-23 10:05:07
tags:html
這篇博客的前身是 《React 新手必須知道的10件事》,結果寫着寫着,「每件事」都遠遠超過了預計的300~500字的限制。給讀者的閱讀形成了極大的困擾。故將《10件事》拆開成若干篇,每一篇只講一個主題。react
React 最推薦的數據交互方式是:props & onChnage。在這種交互方式裏:對於一個可視組件 ComponentA
,用 props
來向它發送信息,而用 onChange
回調函數來接收 ComponentA
發送的·信息。在程序世界裏,咱們更喜歡把上述「交互方式」稱爲「接口」,雖然這個「接口」不是咱們在面嚮對象語言裏的 interface
,可是跟 interface
有着相似的功能。 咱們暫且把這個「接口規範」取名爲 「props & onChange 接口規範」。編程
React 仍是給了另一種方法來進行數據交互:ref & method。在這種交互方式裏,咱們經過 <ComponentA ref={ r => this.refOfComponentA = r }
的方式來得到 ComponentA
對象的引用,而後用 this.refOfComponentA.someMethod()
來向它發送信息。咱們把這交互方式稱爲 「ref & method 接口規範」。在典型的客戶端開發環境裏(iOS、Android、Windows PC等),這種方式更爲常見,而且對函數調用更加友好,更「像」程序語言。可是,對於 React 新手,咱們強烈不建議使用這種藉口規範,除非你對 React 整個機制很是瞭解,仍然想用它。由於它嚴重破壞了 React 組件的一致性。緣由有:redux