2016-09-01 32 views
2

我是反應原生的新手。我正在爲練習做一個簡單的薪水計算器組件。我有兩個TextInput組件,但我似乎無法輸入任何內容。這裏是我的組件的代碼:無法在反應本機TextInput組件中輸入任何內容

class SueldoCalc extends Component { 
    constructor(props) 
    { 
    super(props); 
    } 

calcSalario() 
{ 
    console.log("Calculating"); 
} 

render() 
{ 
return (
    <View> 
     <Text>Entre las horas trabajadas:</Text> 
     <TextInput /> 
     <Text>Entre el rate por hora:</Text> 
     <TextInput /> 
     <TouchableHighlight onPress={this.calcSalario}> 
     <Text>Calcular salario...</Text> 
     </TouchableHighlight> 
    </View> 
); 

} 

} 

我試過訂閱onTextChange事件,但沒有。這很基本,我找不到任何東西。請幫忙!我正在Android模擬器上運行Visual Studio的應用程序。

回答

1

您應該指定onTextChange處理程序,然後從那裏設置狀態。你的<TextInput />應該有一個值屬性:

<TextInput 
    value={this.state.horas} 
    onChange={this._onChangeHandler} 
/> 
+0

即使在添加這兩個屬性後,我仍然無法輸入任何內容。我做了這樣的TextInput: {this.setState({text:text})}} /> – tutiplain

+0

雖然答案是正確的,這樣做並沒有解決問題。我從Visual Studio的Android模擬器切換到使用Android SDK創建的AVD,這解決了我的問題。 – tutiplain

+3

嘗試爲您的TextInput添加一個style = {{height:40}} – chris

相關問題