RN SETSTATEピット小さなノート

プロジェクトは基本的に、我々は以下の小さなピットを注意することは、通常、我々はデータをリフレッシュするために使用され、(リフレッシュページ)をこのようなものを使用しています

私たちはケースを使用するための一般的なページ

最初に書かれた文で、別途初期化

1 //宣言
エクスポートインタフェースISTATE { :getBidButtonData、bidBtnData bidBean:IBidDetailInfoを } エクスポートインタフェースが延びるIBasePageProp {iProps }
エクスポートデフォルトクラスを拡張UtilsRootPage <iProps、ISTATE> { //このメソッドは、に対応する初期化のコンストラクタメソッド

{)(subPageInit
// 2、初始化
         この .state = { 
            bidBean:{} IBidDetailInfoとして
            bidBtnData:{} getBidButtonDataとして、
        } 

    } 
// 3赋值
    this.setState({bidBean:response.data})
 

第二の直接書かれた文で、初期化

エクスポートデフォルトクラスCheckboxModalMenuは延びReact.Component <IProps> { 
// 1、声明、初始化 状態
= { modalVisible: データ:[]、 bidderIdList:[] }。
// 2、使用
  this.setState({データ:res.data.rows})。
 

小さなメモをピット:割当2を解決する方法を使用する場合SETSTATE非同期動作はとても珍しいです

                                ODATA LET:いずれ= この.state.dataを; 
                                せオンユ:任意 = []; 
                                oData.map((fItem:任意) => {
                                     IF (fItem.checkedflag){ 
                                        oNew.push(fItem.userId); 
                                    }   
                                }) ; 
                                // UtilsSuperCommon.logWarn(オンユ); 
                                // オンユは常にSETSTATEは非同期操作であるという理由だけで、初めてbidderIdListのための第2の値を任意の値を取得する必要があります
                                。// そう操作を行う前に、第2書き込まれたデータに戻ってきます
                                // 1、
                                // this.setState({ 
                                //     bidderIdList:オンユ、
                                // } 
                                // 2、该操作是异步操作
                                この.setState({ 
                                    bidderIdList:オンユ、
                                }、() => {
                                     場合この .state.bidderIdList && この.state.bidderIdList.length){
                                         この .setModalVisible();
                                         この .props.onClickDone(このこの.state.bidderIdList); 
                                    } { 
                                        Toast.info( ,. 1 '落札者を選択' 
                                    } 
                                })
                                 // UTI lsSuperCommon.logWarn(this.state.bidderIdList)を、

 

おすすめ

転載: www.cnblogs.com/lijianyi/p/11516410.html