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

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

如何在 ReactJS 的類基組件中以兩種方式數(shù)據(jù)綁定傳遞數(shù)據(jù)?

如何在 ReactJS 的類基組件中以兩種方式數(shù)據(jù)綁定傳遞數(shù)據(jù)?

墨色風雨 2023-04-27 16:20:17
我的問題在子組件中,我有一個通過 post 方法更新的狀態(tài),我必須在我的父組件中顯示這個狀態(tài),這兩個組件都是類基組件
查看完整描述

2 回答

?
蕭十郎

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

ReactJS 是一個具有單向數(shù)據(jù)綁定的庫。所以像Angular或VueJS這樣的數(shù)據(jù)是不可能傳遞的。您應(yīng)該將處理程序函數(shù)傳遞給子組件,然后在Axios回答更新本地組件和父組件之后。


并且這里有個小提示,類組件和函數(shù)組件對你的情況沒有區(qū)別。注意示例代碼:



class ParentComponent extends React.Component {

  state = {

    data: undefined,

  };


  handleGetData = data => {

    this.setState({

      data,

    });

  };


  render() {

    return (

      <ChildComponent onGetData={this.handleGetData} />

    );

  }

}

現(xiàn)在在ChildComponent中,您可以訪問處理函數(shù):


class ChildComponent extends React.Component {

  componentDidMound() {

    const { onGetData } = this.props;


    Axios

      .get('someSampleUrl')

      .then( (data) => {

        onGetData(data); // running this update your parent state

      });

  }


  render() {

    return (

      <div />

    );

  }

}


查看完整回答
反對 回復 2023-04-27
?
慕萊塢森

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

React 的做法是單向的。為了獲得最佳實踐,您必須將狀態(tài)“提升”到父組件中。


但是,如果您希望專門向上傳遞數(shù)據(jù),則需要將回調(diào)作為 prop 向下傳遞。使用該回調(diào)函數(shù)向上傳遞數(shù)據(jù):


家長:


<Parent>

   <Child callback={console.log} />

</Parent>

孩子:


const Child = (props) => {

    const { callback } = props;

    const postData = (...) => {

        ...

        callback(result);

    }

    ...

}


查看完整回答
反對 回復 2023-04-27
  • 2 回答
  • 0 關(guān)注
  • 131 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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