2017-02-06 64 views
1

docs中,React表示它並不真正關心實例,因爲組件將道具作爲輸入並輸出元素給你。它爲您提供了一個示例,讓您瞭解其他框架如何創建實例,然後將其連接到DOM以處理不同事件。但我不明白這與React的做法有什麼不同。React組件實例如何與其他框架不同?

您並沒有在React的組件上調用new,但您仍然需要渲染它並創建所有相同的處理程序。並且組件內部的this仍然引用實例,所以React在每次渲染組件時(即使它是一個<li>中同時渲染幾次的組件)仍然不得不創建一個實例。

傳統框架將不得不創建同一個組件的多個實例來連接到它所對應的每個DOM節點,這不就是React的做法嗎?一個組件怎麼能跟蹤多個this

回答

1

事實上,陣營創建組件例如內部。你不需要擔心使用new

陣營元素只是一個簡單的JavaScript對象是描述要被渲染(React.ComponentHTML元素,如果type是一個String)是什麼。

docs

一個元素不是一個實際實例。相反,這是一種告訴 反應你想要在屏幕上看到什麼的方法。你不能在元素上調用任何方法 。它只是一個具有兩個 字段的不可變描述對象:type:(string | ReactClass)和props:Object1。

+0

所以基本上你將所有的責任傳遞給React - 創建和刪除實例,即 – stackjlei

+1

@stackjlei就是這樣! – mrlew

1

區別在於你開發人員不必編寫代碼來完成所有這些。您只需編寫渲染方法和回調函數,讓React擔心創建DOM元素和組件實例並將它們連接在一起。

相關問題