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

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

根據(jù)子組件的更改更新 Redux Store

根據(jù)子組件的更改更新 Redux Store

揚帆大魚 2022-10-13 10:55:09
我是 React 和學習 Redux 的新手。我有一個包含兩個子組件的容器組件。在其中一個子組件(標題組件)中,我有五個按鈕。它的同級組件(Body 組件)根據(jù)在 Header 組件中單擊的按鈕呈現(xiàn)不同的視圖。我知道我可以通過保持父組件中的狀態(tài)并擁有一個事件處理函數(shù)來實現(xiàn)這一點,該函數(shù)在單擊按鈕時接收回調(diào)函數(shù),但我正在嘗試為更復雜的應用程序學習 Redux。為了實現(xiàn)這一點,我在 Parent 組件中引入了一個處理函數(shù),它根據(jù)從傳遞給 Header 組件的回調(diào)函數(shù)接收到的數(shù)據(jù)調(diào)度一個動作,以更改存儲,從而從 Body 組件呈現(xiàn)適當?shù)囊晥D。這是代碼示例:父組件:...const mapStateToProps = state => {  return {    selectedDS: state.selectedDS  };};const mapDispatchToProps = dispatch => ({  changeDs: selectedDS => dispatch(changeDs(selectedDS)),  dispatch});class Main extends Component {  handleClick = button => {    this.props.dispatch(changeDs(button));  };  render() {    return (      <>        <div className="container">          <div id="header" className="row">            <Header handleClick={this.handleClick} />          </div>          <div className="row">            <DsComponent ds={this.props} />          </div>        </div>      </>    );  }}export default connect(  mapStateToProps,  mapDispatchToProps)(Main);我的問題是:代碼有什么問題?如果我希望組件成為啞組件,那么在組件樹中更深入地調(diào)度操作的最佳方法是什么?
查看完整描述

1 回答

?
慕沐林林

TA貢獻2016條經(jīng)驗 獲得超9個贊

問題 :


是你的reducer,你設置了錯誤的商店價值,你正在設置商店價值


var payload_ds = action.payload;

return Object.assign({}, state, { payload_ds });


// above line create json object something like this

// { selectedDS: 0 , payload_ds: { selectedDS: 4 } }

解決方案 :


var payload_ds = action.payload.selectedDS;

return Object.assign({}, state, { selectedDS: payload_ds }); // <----- HERE


// OR


// as there is only one field you can also use this one

return { selectedDS: payload_ds }

問:如果我希望組件成為啞組件,那么在組件樹中更深入地調(diào)度操作的最佳方法是什么?

A :您可以mapDispatchToProps在將所有內(nèi)容作為道具傳遞時使用它仍然被視為愚蠢的組件。


查看完整回答
反對 回復 2022-10-13
  • 1 回答
  • 0 關注
  • 112 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號