2016-09-01 36 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

相关问题