2016-01-08 82 views
0

我正在添加簡單的日期掩碼到我的react-native應用程序。它的工作原理,它似乎在https://rnplay.org/apps/3twbCw的rnplay,它不適用於我的應用程序。正在調試react-native TextInput行爲

的屏蔽功能是:

dateFormat(text) { 
    if (text.match(/^\d{2}$/) !== null) { 
    text += '/'; 
    } else if (text.match(/^\d{2}\/\d{2}$/) !== null) { 
    text += '/'; 
    } 
    this.setState({birthdate: text}); 
} 

我申請/調用這個函數爲:

<TextInput 
    key='birthdateTxt' 
    style={styles.formField} 
    returnKeyType='done' 
    ref={(ref) => this.birthdateInput = ref} 
    onFocus={() => this.inputFocused(this.birthdateInput)} 
    value={this.state.birthdate} 
    onChangeText={(text) => this.dateFormat(text)} 
    onSubmitEditing={() => this.register()} 
/> 

的函數被調用。這從調試輸出中很清楚。但是this.setState({birthdate:text})不會改變TextInput的值。 rnplay示例似乎在做同樣的事情,但它不表現出同樣的問題。

我該檢查什麼?

+0

此問題發生在應用程序構建於0.17上,並且rnplay在0.13rc上運行。這是迄今爲止我注意到的唯一可能的原因。 –

回答

0

TextInput在0.17中明顯部分損壞。

相關問題