如何在 promise 中设置 react hook 的值?

我从承诺中获取了一个数据,我想把它设置在react hook中,它确实是这样做了,但它会产生无限的请求,并重新渲染页面,我还想让一些特定的唯一数据来填充。

const [rows, setRows] = useState([]);
useEffect(() => {
    async function fetchData() {
        myEmploiList({
            user: user.id
        }).then((data) => {
            //setRows(data);
            const newData = [];
            data.forEach((item, index) => {
                newData[index] = {
                    id: item._id,
                    name: item.name,
                    society: item.society
                };
                setRows(newData);
            });
        });
    }
    fetchData();
});

解决方案:

你应该添加依赖关系到你的 useEffect 钩。这是这个钩子的第二个论点。

useEffect(() => {
// your code
}, [deps]);

deps解释。

  • 无值:每次组件渲染时都会执行效果。
  • []:只在组件第一次渲染时执行效果。
  • value1, value2, …]: 如果任何值发生变化,将执行效果。

如需进一步阅读,我强烈推荐 本博文.

给TA打赏
共{{data.count}}人
人已打赏
解决方案

从数据框中删除不包括一组列的列中的nan行。

2022-4-21 1:00:09

解决方案

不能使用下拉菜单访问对象,ngFor [closed] 。

2022-4-21 1:00:12

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索