鍍金池/ 問答/HTML/ 剛開始學(xué)習(xí)dva,遇到了一個(gè)父組件向子組件傳值的問題?

剛開始學(xué)習(xí)dva,遇到了一個(gè)父組件向子組件傳值的問題?

最近公司要求用dva+antd開發(fā)一個(gè)前臺(tái),遇到了一個(gè)困難
有一個(gè)父組件index.js

 getCompensateRate(productType,invoicePrice){
        let price=0;
        JQuery.ajax({
          type: 'POST',
          url: 'http://127.0.0.1:8030/msNgpOutboxFalseAPI/queryCompensatePrice',
          dataType: 'json',
          contentType: "application/json; charset=utf-8",
          data: JSON.stringify({productType,invoicePrice}),
          success: function(result) {
            console.log(result);
            //console.log(JSON.stringify(result));
            price=result.data.maxUserCompensate;   
            console.log(price); 
            //setPrice(price);

          },
          error: function(error){
            throw error;
          },
        });         
      }

定義了一個(gè)異步方法查詢一條記錄
這是子組件ApplyModel.js

       const putProductTypeInvoice=()=>{
  let productType = record.productType;
  let invoicePrice = getFieldValue('invoicePrice');
   getCompensateRate(productType,invoicePrice);
   
}

父組件方法通過參數(shù)傳入子組件中,我在子組件中調(diào)用了這個(gè)方法,現(xiàn)在的問題是異步請(qǐng)求會(huì)獲取到值,但是將獲取到的值更新到子組件中呢?

回答
編輯回答
小曖昧
  1. 父組件異步fetch到值然后setState
  2. 或者使用dispatch, 然后子組件中通過mapStateToProps得到請(qǐng)求值
2017年4月24日 05:12