React native 从react native上的状态Redux表单获取TextInput值
我有一个不同字段的代码。当从其他组件传递新值时,我有四个带有此值的字段,我使用this.state生成她的值 但是当我执行handleSubmit()时,这个输入不会发送。我已经做了一个测试,一旦我已经加载了它们,就改变了她的值,现在是的,它们被发送了 如何在handlesubmit中接收这些值 这是代码的一部分:React native 从react native上的状态Redux表单获取TextInput值,react-native,redux,field,redux-form,React Native,Redux,Field,Redux Form,我有一个不同字段的代码。当从其他组件传递新值时,我有四个带有此值的字段,我使用this.state生成她的值 但是当我执行handleSubmit()时,这个输入不会发送。我已经做了一个测试,一旦我已经加载了它们,就改变了她的值,现在是的,它们被发送了 如何在handlesubmit中接收这些值 这是代码的一部分: changeImage = (values) => { if (values.type == "profile") this.
changeImage = (values) => {
if (values.type == "profile")
this.setState({changePersonalImage: true});
else if (values.type == "featured")
this.setState({changeFeaturedImage: true});
else if (values.type == "project")
this.setState({changeProjectImage: true});
this.setState(values);
}
render() {
return (
<View>
<View>
{this.state.changePersonalImage &&
<View>
<Field name="personalImage_type" component={genericField} type="hidden" val={this.state.profile_type} />
<Field name="personalImage_fileName" component={genericField} type="hidden" val={this.state.profile_fileName} />
<Field name="personalImage_image" component={genericField} type="hidden" val={this.state.profile_image} />
<Field name="personalImage_isVertical" component={genericField} type="hidden" val={this.state.profile_isVertical} />
</View>
}
<TouchableOpacity
style={styles.btnRequest}
//onPress={this.props.handleSubmit(this.props.edit)}
onPress={this.props.handleSubmit((values) => {
console.log('valuess - handleSubmit');
console.log(values);
})}
>
<WhiteText style={styles.btnRequestText}>Save changes</WhiteText>
</TouchableOpacity>
changeImage=(值)=>{
如果(values.type==“profile”)
this.setState({changePersonalImage:true});
else if(values.type==“特色”)
this.setState({changeFeaturedImage:true});
else if(values.type==“项目”)
this.setState({changeProjectImage:true});
此设置状态(值);
}
render(){
返回(
{this.state.changePersonalImage&&
}
{
log('valuess-handleSubmit');
console.log(值);
})}
>
保存更改
已解决
我在这篇文章中找到了一个解决方案
问题是创建一个隐藏字段。解决方案是调用此方法:
this.props.change('Field\u name',value)