国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

詳解React中setState回調函數

2024-05-06 15:33:26
字體:
來源:轉載
供稿:網友

在使用React過程中,中可以使用this.state來訪問需要的某些狀態,但是需要更新或者修改state時,一般而言,我們都會使用setState()函數,從而達到更新state的目的,setState()函數執行會觸發頁面重新渲染UI。但是!!!setState是異步的!!!

1. 語法:

setState(updater[, callback]) //

updater是要改變的state對象,callback是state導致的頁面重新渲染的回調,等價于componentDidUpdate
一般而言,在設置頁面某些state的時候,需要先設置好state,然后再對頁面的一些參數進行修改的時候,可以使用setState的回調函數。

2. 分析一下區別

不在回調中使用參數,我們在設置state后立即使用state:

this.state = {foo: 1};this.setState({foo: 123});console.log(this.state.foo);// 1

在回調中調用設置好的state

this.state = {foo: 2};this.setState({foo: 123}, ()=> { console.log(foo); // 123});

關于setState的回調函數的作用大概如此,這個函數相當于componentDidUpdate函數,和生命周期的函數類似。

3. 注意:

    剛說了,setState是異步的!不保證數據的同步。 setState更新狀態時可能會導致頁面不必要的重新渲染,影響加載。 setState管理大量組件狀態也許會導致不必要的生命周期函數鉤子調用。

參考文檔:https://facebook.github.io/react/docs/react-component.html#setstate

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持錯新站長站。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 定州市| 资讯 | 建湖县| 江达县| 金堂县| 木里| 清徐县| 府谷县| 响水县| 铁力市| 南涧| 裕民县| 托里县| 博白县| 砚山县| 自治县| 陇川县| 北票市| 垫江县| 大埔县| 渝中区| 枣强县| 新民市| 平湖市| 临夏市| 武清区| 施秉县| 仲巴县| 阿克| 扎鲁特旗| 婺源县| 正定县| 江陵县| 韶关市| 黔西县| 张家界市| 彩票| 娱乐| 乌拉特前旗| 呼伦贝尔市| 苗栗县|