第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

redux異步請(qǐng)求state和props如何合理控制?

redux異步請(qǐng)求state和props如何合理控制?

慕的地8271018 2019-01-29 16:47:03
情景:現(xiàn)在有個(gè)彈框,當(dāng)前頁面有個(gè)按鈕,點(diǎn)擊按鈕顯示彈框。彈框內(nèi)有輸入表單,輸入后點(diǎn)提交按鈕請(qǐng)求接口,如果接口請(qǐng)求正確關(guān)閉彈框,如果報(bào)錯(cuò),toast提示不關(guān)閉當(dāng)前彈框。現(xiàn)在是頁面中state中定義個(gè)字段isShow來控制彈框隱藏或顯示。this.state={    isShow:false}用到的是redux-saga,在點(diǎn)擊的按鈕的請(qǐng)求接口this.props.menuCreate({id:123})對(duì)于如果是錯(cuò)誤狀態(tài)的話,需要在reducer里定義一個(gè)錯(cuò)誤的狀態(tài),根據(jù)請(qǐng)求狀態(tài)來修改這個(gè)error狀態(tài) let initState={    error:false}然后在頁面中使用componentWillReceiveProps來判斷props的error的狀態(tài),然后再修改isShow來控制彈框。感覺有點(diǎn)繁瑣。還是說把彈框的隱藏顯示的控制也放到redux的store中,都通過props來控制彈框狀態(tài),這樣更合理呢。
查看完整描述

1 回答

?
千巷貓影

TA貢獻(xiàn)1829條經(jīng)驗(yàn) 獲得超7個(gè)贊

感覺寫用redux處理這種邏輯有點(diǎn)殺雞用牛刀。。。
onClick事件里處理異步請(qǐng)求,直接根據(jù)結(jié)果判斷是否需要將模態(tài)框隱藏掉就可以。

onClick = () => {
    fetchAPI()
        .then(result => {            this.setState({visible: false});
        })
        .catch(e => {
            alert(e.message)
        )
}


查看完整回答
反對(duì) 回復(fù) 2019-01-29
  • 1 回答
  • 0 關(guān)注
  • 617 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)