useState 导致此错误:对象作为 React 子对象无效(找到:带有键 {email, text, id} 的对象)

时间:2021-07-06 11:34:12

标签: reactjs react-hooks

试图在我的代码的某些部分使用 useState 钩子,但我收到此错误:

Error: Objects are not valid as a React child (found: object with keys {email, text, id}). If you meant to render a collection of children, use an array instead.

删除 useState 括号中的所有内容会使错误消失,但是,为什么这会导致问题??

    import React , {createContext, useState} from 'react';
    import {v4 as uuid} from 'uuid';
    export const CommentContext = createContext();
    const CommentContextProvider = (props) => {
        const [comments , setComment] = useState([
            {email: 's.jahanmard@gmail.com',
             text:'Nicest guy eeeeveeer!', id:1},
            {email: 'jahanmard22@gmail.com',
             text:'buffed as f...', id:2}
        ]);
        const addComment = (email,text) =>{
            setComment ([...comments, {email,text,id:uuid()}])
        }
        return (
            <CommentContext.Provider value={{comments , addComment}}>
                {props.children}
            </CommentContext.Provider>
        )
    }
    export default CommentContextProvider

1 个答案:

答案 0 :(得分:0)

您能否提供一个示例代码,显示您尝试呈现该评论数据的方式?

我猜你正在尝试做这样的事情。

<div>
{comment}
</div>

你可以试试看this线程,它可能对你有帮助