我是反应原生的新手。我正在为练习做一个简单的工资计算器组件。我有两个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 Simulator for Visual Studio上运行应用程序。
答案 0 :(得分:1)
您应该指定onTextChange处理程序,然后从那里设置状态。您的<TextInput />
应具有值属性:
<TextInput
value={this.state.horas}
onChange={this._onChangeHandler}
/>
答案 1 :(得分:0)
我在Android和IOS中都遇到了相同的问题。将宽度和高度设置为以下值后(注意必须同时设置宽度和高度),问题得以解决:
<TextInput style={{ height: 20, width: 100 }} />