我试图通过props将对象传递给子组件。该值在 useEffect 钩子中设置并在传递给我的子组件时丢失。
我曾尝试在一个单独的函数中设置 useEffect 钩子之外的对象的值,但该值仍然丢失。
import React, { useState, useEffect } from 'react';
function SetValue(props){
let users = {};
useEffect(() => {
users = { user: 'bob' };
})
return <NewComponent users={users} />
}
export default SetValue;
我希望 props.users 是 { user: 'bob' } 而不是空对象 {}。
错误信息是:
“每次渲染后,React Hook useEffect 内部对 'users' 变量的赋值将丢失。要随着时间的推移保留该值,请将其存储在 useRef Hook 中,并将可变值保留在 '.current' 属性中。否则,您可以将此变量直接移动到 useEffect react-hooks/exhaustive-deps 中”