小编Hum*_*eem的帖子

每次渲染后,React Hook useEffect 中对“data”变量的赋值将会丢失

有一个完整的警告消息:每次渲染后,React Hook useEffect 内部对“data”变量的赋值将丢失。要随着时间的推移保留该值,请将其存储在 useRef Hook 中,并将可变值保留在“.current”属性中。否则,您可以直接将此变量移动到 useEffect 内部。

我正在尝试使用材质表中 useState Hook 中的数据状态来显示数据。这就是为什么我将 const 更改为 let,但它不断给我警告,我不知道如何将 useRef Hook 与 useState Hook 一起使用。

const filterrr = () => {
    
    
            if (age.length !== 0) {
              return true;
            } 
            else {
              return false;
            }
        
          }
    
          let [data, setData] = useState(Data);
    
    
          useEffect(() => {
    
    
            console.log(Data);
            data = Data.filter(filterrr);
            setData(data);
          }, [age])
Run Code Online (Sandbox Code Playgroud)

所以我尝试在 useEffect 之外使用 useState ,以便其他函数可以使用数据状态。

reactjs react-hooks material-table

5
推荐指数
1
解决办法
8810
查看次数

标签 统计

material-table ×1

react-hooks ×1

reactjs ×1