【问题标题】:.map function not rendering react data [closed].map 函数不呈现反应数据 [关闭]
【发布时间】:2021-10-19 11:29:22
【问题描述】:

我有一个调用 API 的函数,并在 console.logged 时返回一个数组。使用效果正在运行,并正常返回数组但它永远不会更新前端。一直在研究这个问题,还没有找到解决方案。我错过了什么吗?

useEffect(()=>{
        const fetchData = async (user) => {
            console.log(user)
            const { data, error } = await supabase
                .from('contacts')
                .select()
                .match({ user_id: user })
            return data;
        }
        const user = supabase.auth.user().id;
        fetchData(user).then((data)=> {
            // console.log(data)
            setContacts(data);
            console.log(contacts)
        }).catch(error=>{
            console.log(error)
        })
        // returns an array or objects. each object is a contact    
    },[contacts])
    return(
        <div>
            <h1>All Contacts</h1>
            <tbody>
                <tr>
                    <th>Name</th>
                    <th>email</th>
                    <th>phone</th>
                    <th>notes</th>
                </tr>
                {
                    contacts.map((contact, i) => {
                        <tr key={i}>
                            <td>{contact.prosepct_name}</td>
                            <td>{contact.prospect_email}</td>
                            <td>{contact.prospect_phone}</td>
                            <td>{contact.notes}</td>
                        </tr>
                    })
                }
                
            </tbody>

【问题讨论】:

    标签: javascript reactjs next.js


    【解决方案1】:

    乍一看 - 您似乎需要将 map 函数的内部部分包装在 return 中。

     {
        contacts.map((contact, i) => {
          return (
            <tr key={i}>
              <td>{contact.prosepct_name}</td>
              <td>{contact.prospect_email}</td>
              <td>{contact.prospect_phone}</td>
              <td>{contact.notes}</td>
            </tr>
          )
        })
      }
    

    【讨论】:

    • 谢谢。不太清楚我是怎么错过的(捂脸)
    • 别担心 - 我们都去过那里!
    猜你喜欢
    • 2021-03-18
    • 1970-01-01
    • 2021-09-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多