解決setState的異步問題

由于react中把setState設(shè)置為異步操作函數(shù)屈溉,這有時(shí)候會(huì)給我們帶來以一些問題,下面介紹一下怎么解決這個(gè)問題抬探。

1. 在setState完成的回調(diào)里執(zhí)行需要的操作

setState函數(shù)的第二個(gè)參數(shù)允許傳入回調(diào)函數(shù)语婴,在狀態(tài)更新完畢后進(jìn)行調(diào)用,譬如:

this.setState({

? ? ? load: !this.state.load,

? ? ? count: this.state.count + 1

? ? }, () => {

? ? ? ? ? console.log(this.state.count);

? ? ? ? ? console.log('加載完成')

? ? });

2. 傳入狀態(tài)計(jì)算函數(shù)

除了使用回調(diào)韓式的方式監(jiān)聽狀態(tài)更新結(jié)果之外驶睦,react還允許我們傳入某個(gè)狀態(tài)計(jì)算函數(shù)而不是對(duì)象作為第一個(gè)參數(shù)。狀態(tài)計(jì)算函數(shù)能夠?yàn)槲覀兲峁┛梢蕾嚨慕M件的state與props值匿醒,即會(huì)自動(dòng)的將我們的狀態(tài)更新操作添加到隊(duì)列中并等待前面的更新完畢后傳入更新的狀態(tài)值:

this.setState(function(prevState, props){

? ? ? ? ? ?return {需要改變的state的名稱: 改變之后的state的值}

});

參考鏈接:https://zhuanlan.zhihu.com/p/24781259

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末场航,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子廉羔,更是在濱河造成了極大的恐慌溉痢,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,406評(píng)論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件憋他,死亡現(xiàn)場離奇詭異孩饼,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)竹挡,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,732評(píng)論 3 393
  • 文/潘曉璐 我一進(jìn)店門镀娶,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人揪罕,你說我怎么就攤上這事梯码。” “怎么了好啰?”我有些...
    開封第一講書人閱讀 163,711評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵轩娶,是天一觀的道長。 經(jīng)常有香客問我框往,道長鳄抒,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,380評(píng)論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮许溅,結(jié)果婚禮上瓤鼻,老公的妹妹穿的比我還像新娘。我一直安慰自己闹司,他們只是感情好娱仔,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,432評(píng)論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著游桩,像睡著了一般牲迫。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上借卧,一...
    開封第一講書人閱讀 51,301評(píng)論 1 301
  • 那天盹憎,我揣著相機(jī)與錄音,去河邊找鬼铐刘。 笑死陪每,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的镰吵。 我是一名探鬼主播檩禾,決...
    沈念sama閱讀 40,145評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼疤祭!你這毒婦竟也來了盼产?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,008評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤勺馆,失蹤者是張志新(化名)和其女友劉穎戏售,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體草穆,經(jīng)...
    沈念sama閱讀 45,443評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡灌灾,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,649評(píng)論 3 334
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了悲柱。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片锋喜。...
    茶點(diǎn)故事閱讀 39,795評(píng)論 1 347
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖豌鸡,靈堂內(nèi)的尸體忽然破棺而出跑芳,到底是詐尸還是另有隱情,我是刑警寧澤直颅,帶...
    沈念sama閱讀 35,501評(píng)論 5 345
  • 正文 年R本政府宣布博个,位于F島的核電站,受9級(jí)特大地震影響功偿,放射性物質(zhì)發(fā)生泄漏盆佣。R本人自食惡果不足惜往堡,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,119評(píng)論 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望共耍。 院中可真熱鬧虑灰,春花似錦、人聲如沸痹兜。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,731評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽字旭。三九已至对湃,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間遗淳,已是汗流浹背拍柒。 一陣腳步聲響...
    開封第一講書人閱讀 32,865評(píng)論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留屈暗,地道東北人拆讯。 一個(gè)月前我還...
    沈念sama閱讀 47,899評(píng)論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像养叛,于是被迫代替她去往敵國和親种呐。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,724評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容

  • 做React需要會(huì)什么? react的功能其實(shí)很單一潘飘,主要負(fù)責(zé)渲染的功能,現(xiàn)有的框架掉缺,比如angular是一個(gè)大而...
    蒼都閱讀 14,759評(píng)論 1 139
  • 最近看了一本關(guān)于學(xué)習(xí)方法論的書卜录,強(qiáng)調(diào)了記筆記和堅(jiān)持的重要性。這幾天也剛好在學(xué)習(xí)React眶明,所以我打算每天堅(jiān)持一篇R...
    gaoer1938閱讀 1,675評(píng)論 0 5
  • 以下內(nèi)容是我在學(xué)習(xí)和研究React時(shí)艰毒,對(duì)React的特性、重點(diǎn)和注意事項(xiàng)的提取搜囱、精練和總結(jié)丑瞧,可以做為React特性...
    科研者閱讀 8,232評(píng)論 2 21
  • “那時(shí)日子還年輕,我扎個(gè)懶散的馬尾蜀肘,在你面前蹦蹦跳跳绊汹。世界干凈,有喜歡的你和幼稚的詩扮宠,仿佛生來被愛西乖。” 一 夏季的...
    水檻閱讀 168評(píng)論 5 4
  • 在昨晚的“中國杯”中,國足0-2輸給了冰島隊(duì)获雕,本場比賽里皮主要目的是考驗(yàn)新人為主薄腻,輸?shù)舯荣愐矝]有太多好埋怨的,而...
    奮斗星人_小帆閱讀 201評(píng)論 0 0