在使用香草React Native一段时间后,我目前正在学习如何使用Redux。我正在尝试了解如何存储TextInput
的值。以前,我只是将值存储在状态中。我尝试了一些事情,包括下面的代码示例。
当前,todoInput.value
未定义。我还尝试过将value
的{{1}}属性直接分配给用TextInput
定义的变量,但这仍然没有定义。
如何更改代码,以确保let
的值未定义?
TextInput
答案 0 :(得分:2)
您可以制作一个有状态组件,以便将value
传递到组件state
,以便可以在多个地方使用
根据您的情况(假设该组件已连接)
class AddTodo extends React.Component {
state = {
todoInput: null
}
addNewTodo = () => {
this.props.dispatch(addNewTodo(this.state.todoInput))
}
render() {
return (
<View>
<TextInput onChangeText={text => this.setState({todoInput: text})} value={this.state.todoInput} {...{/*Other Props*/}}/>
<Button title="Add Todo" onPress={this.addNewTodo}></Button>
</View>
)
}
}