1. 程式人生 > >React中prop和state的區別

React中prop和state的區別

需要理解的是,props是一個父元件傳遞給子元件的資料流,這個資料流可以一直傳遞到子孫元件。而state代表的是一個元件內部自身的狀態(可以是父元件、子孫元件)。
改變一個元件自身狀態,從語義上來說,就是這個元件內部已經發生變化,有可能需要對此元件以及元件所包含的子孫元件進行重渲染。
而props是父元件傳遞的引數,可以被用於顯示內容,或者用於此元件自身狀態的設定(部分props可以用來設定元件的state),不僅僅是元件內部state改變才會導致重渲染,父元件傳遞的props發生變化,也會執行。

既然兩者的變化都有可能導致元件重渲染,所以只有理解pros與state的意義,才能很好地決定到底什麼時候用props或state。

官方指導有說,props放初始化資料,一直不變的,state就是放要變的。

State 應該包括那些可能被元件的事件處理器改變並觸發使用者介面更新的資料,因為元件本身不能修改自己的 props。