我目前有一个无状态功能组件,该组件从redux获取数据,并使用它向graphQL发送变异。我还将lodash的get
和getOr
用于道具选择。问题是,在下面的submit
函数中,我试图使用props
将表单数据传递到请求/突变中。不幸的是,当我在console.log
函数外部使用async
道具时,formData
充满了我需要的信息。当我在异步函数中使用props
时,什么也找不到。我在这里做错什么了吗?下面的示例:
const BeforeRequestModal = (props) => {
console.log(props.formData) // formData shows redux data here
const submit = async () => {
console.log(props.formData) // formData is an empty object here?
try {
console.log(props.formData) // formData is an empty object here as well?
} catch(err) {
console.log(err)
}
}
return (
<Modal size="sm">
copy copy copy
<ConsentForm />
<Button
text="Request"
onClick={submit}
/>
</Modal>
);
}
const mapStateToProps = (state) => ({
formData: getOr({}, 'member-consent.data', state.form),
})
export default compose(
connect(mapStateToProps)
)(BeforeRequestModal)