React native 在redux表单中设置服务器端错误
我想在redux表单React native 在redux表单中设置服务器端错误,react-native,react-redux,redux-form,React Native,React Redux,Redux Form,我想在redux表单字段中设置服务器端错误。我正在尝试: <FormContatiner> <Field icon={ 'user' } returnKeyType={ 'next' } withRef ref={ (componentRef) => this.firstName = componentRef } refField="firstName" onEnter
字段中设置服务器端错误。我正在尝试:
<FormContatiner>
<Field
icon={ 'user' }
returnKeyType={ 'next' }
withRef
ref={ (componentRef) => this.firstName = componentRef }
refField="firstName"
onEnter={() => {
this.lastName.getRenderedComponent().refs.lastName.focus()
}}
placeholder={ consText.FIRST_NAME }
component={ RenderInput }
name={'first_name'}
/>
<Field
icon={ 'user' }
returnKeyType={ 'next' }
withRef
ref={ (componentRef) => this.lastName = componentRef }
refField="lastName"
onEnter={() => {
this.userName.getRenderedComponent().refs.userName.focus()
}}
placeholder={ consText.LAST_NAME }
component={ RenderInput }
name={ 'last_name' }
/>
<Field
icon={ 'user' }
returnKeyType={ 'next' }
withRef
ref={ (componentRef) => this.userName = componentRef }
refField={ 'userName' }
onEnter={() => {
this.email.getRenderedComponent().refs.email.focus()
}}
placeholder={ consText.USERNAME }
component={ RenderInput }
name={ 'username' }
validate={ [] }
/>
</FormContatiner>
这是this.props.register
函数:
export const register = (user, navigation) => {
return async (dispatch) => {
dispatch({
type: REGISTER_REQUEST
})
try {
await axios.post(URL + 'rest_users', user)
.then(function (response) {
console.log(response);
if(response.data.error==true) {
dispatch({
type: REGISTER_FAILER,
payload: response.data.errorMsg
});
throw new SubmissionError({
username: response.data.errorMsg.username[0],
_error: 'Login failed!'
});
}
});
} catch (error) {
console.log(error);
}
};
};
我得到了这个错误:
SubmissionError{错误:{…},消息:“提交验证失败”,
名称:“SubmissionError”,堆栈:“SubmissionError:提交验证”
失败↵ 在h…rs\node_modules\expo\tools\hassassetfiles:6502:9)}
错误是什么?获取此错误SubmissionError{错误:{…},消息:“提交验证失败”,名称:“SubmissionError”,堆栈:“SubmissionError:提交验证失败”↵ 在h…rs\node\u modules\expo\tools\hassassetfiles:6502:9)“}我正在跟踪此链接,但我被卡住了,我不知道我哪里出错了,您收到了一个错误,因为您正在抛出SubmissionError是的,我已经收到用户名,退出了错误,我想在用户名字段上显示此错误
export const register = (user, navigation) => {
return async (dispatch) => {
dispatch({
type: REGISTER_REQUEST
})
try {
await axios.post(URL + 'rest_users', user)
.then(function (response) {
console.log(response);
if(response.data.error==true) {
dispatch({
type: REGISTER_FAILER,
payload: response.data.errorMsg
});
throw new SubmissionError({
username: response.data.errorMsg.username[0],
_error: 'Login failed!'
});
}
});
} catch (error) {
console.log(error);
}
};
};