React – 解构对象后的未定义属性

huangapple go评论67阅读模式
英文:

React - undefined properties of object after destructuring

问题

以下是翻译好的代码部分:

我正在尝试在获取数据后呈现对象列表我能够获取所有数据但在呈现时属性为undefined我做错了什么以下是我的代码

import React from 'react';

const Post = (post) => {
    const { id, userId, title, body } = post;
    console.log(post); // 正常
    console.log(post.title); // 未定义
    return (
        <li key={post.id}>
            <div>{title}</div>
            <div>{body}</div>
        </li>
    );
};

export default Post;

希望这对你有所帮助。

英文:

I am trying to render a list of objects after a fetch, I get all the data, but at render time, properties are undefined. What am I doing wrong? Here is my code.

import React from &#39;react&#39;;

const Post = (post) =&gt; {
    const {id, userId, title, body} = post;
    console.log(post); // good
    console.log(post.title); // undefined
    return (
        &lt;li key={post.id}&gt;
            &lt;div&gt;{title}&lt;/div&gt;
            &lt;div&gt;{body}&lt;/div&gt;
        &lt;/li&gt;
    );
};

export default Post;

React – 解构对象后的未定义属性

答案1

得分: 4

你忘记了解构传入的 props:

import React from 'react';

const Post = ({ post }) => { // 这里
    const { id, userId, title, body } = post;
    console.log(post); // 好的
    console.log(post.title); // 未定义
    return (
        <li key={post.id}>
            <div>{title}</div>
            <div>{body}</div>
        </li>
    );
};

export default Post;

请记住,使用以下方式:

<Post post={...} />

等同于这样:

Post({ post: { ... } });
英文:

You forgot to destructure the incoming props as well:

import React from &#39;react&#39;;

const Post = ({ post }) =&gt; { // here
    const { id, userId, title, body } = post;
    console.log(post); // good
    console.log(post.title); // undefined
    return (
        &lt;li key={post.id}&gt;
            &lt;div&gt;{title}&lt;/div&gt;
            &lt;div&gt;{body}&lt;/div&gt;
        &lt;/li&gt;
    );
};

export default Post;

Remember that using something like this:

&lt;Post post={...} /&gt;

is like this:

Post({ post: { ... } });

huangapple
  • 本文由 发表于 2023年3月21日 03:09:46
  • 转载请务必保留本文链接:https://go.coder-hub.com/75794363.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定