![](/img/trans.png)
[英]Failed prop type: Invalid prop 'value' of type 'object' supplied to 'TextInput'
[英]Failed prop type: Invalid prop 'value' of type 'object' supplied to 'TextInput' React Native
我有以下 TextInput 組件:
<TextInput value={this.state.inputText}
maxLength={1}
onSubmitEditing={this.textHandler}
onChangeText={(text) => this.setState({inputText: text})} />
當我將輸入更改為“”並提交(在 TextInput 中)時,出現以下錯誤: “道具類型失敗:提供給“TextInput”的“對象”類型的道具“值”無效”
我嘗試刪除每個回調,顯然,錯誤是由於“onSubmitEditing”而引發的。
textHandler = (text) => {
if(text == '' || text == '-' ){
text = '0';
}
this.setState({inputText: text});
}
如何使回調僅在文本是字符串而不是對象的情況下被調用?
將您的onSubmitEditing
更改為
onSubmitEditing={(event) => this.textHandler( event.nativeEvent.text )}
它是一個函數,您還沒有向它傳遞值。 如果你想通過,你可以從event
中獲得
但是您已經使用了onChangeText
它將更新inputText
所以您只需要檢查值是否存在。
我遇到過同樣的問題。 它通常發生組件或元素的無效或錯誤的道具類型。
我的案例是<TextInput onChangeText={}/>
而不是<TextInput onChange={}/>
。 所以我遇到了這個問題。 請先檢查您的道具類型是否正確。 它對我有用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.