2017-07-04 149 views
0

我知道this.setState是異步的。ReactNative - Redux不立即更新

但是現在,我使用Redux並在reducer中沒有this.setState。我可以使用回調setState,但在REDX我不知道在哪裏把回調和如何。在行動? (否)在Reducer中?在組件中?在容器中?有存貨? (沒有)。

我是新來的redux和reactnative,所以我希望你能理解我的問題。

我的數據正在更新,但晚了一步。

爲例:

抽頭: 'A',狀態= ''

抽頭: 'AB,狀態= 'A'

抽頭: 'ABC',狀態=' AB 「

在成分,我稱之爲功能是這樣的:

let { myFunction1, myFunction2 } = this.props; 
myFunction1(); 

所以設置狀態的作品,但我需要處理這個晚。

回答

0

您應該使用setState來存儲值onChange,一旦用戶完成輸入,您可以調用您的reducer函數以將值保存到您的商店。它會減少呼叫減速機功能的次數。

例子:

<TextInput 
    underlineColorAndroid='transparent' 
    onSubmitEditing={() => this.onNextPress()} 
    onChangeText={(text) => this.onChangeText(text)} 
/> 

使用具有onChangeText(text)處理您的setState,一旦提交(或事件觸發),使用另一個函數來處理減速通話。在我的例子中,它是onNextPress()