【发布时间】:2017-12-01 07:12:56
【问题描述】:
这是我的组件的状态:
state = {
data: {
userId: `${user.id}`,
name: '',
country: '',
city: ''
},
loading: false,
errors: {}
};
我使用 redux 从登录用户中检索用户 ID:
function mapStateToProps(state){
return{
user: state.user
}
}
QuestForm.propTypes = {
user:PropTypes.shape({
email: PropTypes.string.isRequired
}).isRequired,
submit: PropTypes.func.isRequired
};
export default connect(mapStateToProps, null)(Form);
它向我抱怨'user' is not defined no-undef
状态内的语法或我的 redux 逻辑方法是否有问题? 提前谢谢!
【问题讨论】:
-
你有codepen什么的?
-
无法明确回答。例如您的状态 sn-p .. 用户变量来自哪里?您的组件源不完整。如果您的状态 sn-p 是组件状态还是 redux 状态,它也不完全清楚。因为你写了
state of my component我假设组件状态。设置依赖于你的道具的状态也是一种反模式。 -
你能贴出你的组件的代码,在哪里定义状态?
-
@JuHwon,我想将用户从 redux 传递到组件的状态。这个组件不是为用户准备的,而是为游戏准备的。我这样做的唯一原因是在 API 调用之后保存该游戏是由该特定用户创建的。除了将 id 作为表单的一部分传递之外,我没有找到另一种在 api 调用中将 userId 作为参数传递的方法。