0

描述:在 DRF 注册令牌身份验证后,我将令牌和 json 用户对象接收到我的 authReducer 中,该对象进一步向下传递到我的 rootReducer,并auth.user以我的状态存储。user对象是:

{id:1, first:"first", last:"last", username:"Santa",email:"xyz@gmail.com"}, 并且可以调用

render(){
console.log(this.props.user);
return(){...

在基于 React 类的组件的渲染函数中。

状态映射到道具:

        mapStateToProps=(state)=>{
        return{
        user:state.auth.user,
        }
    }
export default connect(mapStateToProps,)(ProfileUpdate)

一切正常 - 对象出现在上面的控制台中,但是如果我尝试访问对象的值,例如:

render(){
const user=this.props.user;
console.log(user.first);
return(){...

我收到一个TypeError: Cannot convert undefined or null to object.

但是这样做:

render(){
const user=this.props.user;
user=new Object(user);
console.log(user.first);
return(){...

作品。这是为什么?我总是必须创建一个新对象吗?

4

0 回答 0