use-effect相关内容

(反应)useEffect没有在后台运行

我刚接触Reactjs,并且正在尝试制作这款简单的秒表。这段代码是在我的浏览器中工作的,但是当我最小化浏览器暂停的时间,并且只在我打开浏览器时才继续,你有没有发现我肯定错过了什么?提前感谢! import { useState, useEffect } from "react"; export const SW = () => { const [mSec, setMSec] = use ..
发布时间:2022-02-28 09:58:11 其他开发

如何从 UseEffect Hook 返回值

我从使用效果钩子(我相对较新)中获取纬度和经度.我想返回使用效果钩子之外的值,并将它们存储在变量中,如果需要的话甚至存储在状态中.我可以控制台记录这些值,但我只是添加一个返回语句还是以某种方式传递参数?我需要使用什么功能?我计划将 lat 和 long 数据传递到代码的其他部分,这就是我尝试从 useEffect 挂钩中检索它的原因. useEffect(() => {if(导航器中的“地理位置 ..
发布时间:2022-01-21 22:36:18 其他开发

React - 在获取数据并使用该数据设置状态后如何清理 useEffect()?

我正在使用钩子 useEffect 向我的服务器发出 fetch 请求,但我不断收到以下警告: 警告:无法对未安装的组件执行 React 状态更新.这是一个空操作,但它表明您的应用程序中存在内存泄漏.要解决此问题,请在 useEffect 清理函数中取消所有订阅和异步任务. 我了解此警告的原因,但如何清除它?我尝试过这篇文章中建议的方法,但没有成功:https://dev.to/pal ..
发布时间:2022-01-20 14:50:51 其他开发

UseEffect 被多次调用

我以为 useEffect 只在渲染后调用一次,但它被执行了多次,而且不是按照我预期的顺序. 我希望它在提取过程中发送消息“数据加载",然后在提取完成后,呈现标题字段并提醒“..完成..."一次就结束了. 我在两个点​​添加了 ALERT 和控制台日志以确定流程,并且警报和控制台日志都以不同的顺序出现不止一次.您能否运行此代码并查看行为.我将第二个参数数组保留为 null 以使其仅运行 ..
发布时间:2022-01-20 14:29:57 前端开发

将异步函数放入 useEffect 后出现错误

在 useEffect 函数中,如果我只提到 getResults 函数变量,应用程序不会崩溃.但是当我在下面的代码中调用它时,我得到了这些错误: react-dom.development.js:21857 Uncaught TypeError: destroy is not a功能 和 考虑在树中添加错误边界以自​​定义错误处理行为. 函数 App() {const [食 ..
发布时间:2022-01-20 14:27:38 其他开发

React useEffect 无限循环获取数据 axios

这段代码导致我陷入无限循环. 我一直在尝试其他帖子中的一些解决方案,但它们不起作用. locationAddress 是一个地址数组,我正在尝试使用 Google Maps Geocode API 获取坐标. const reducer = (state, action) =>{开关(动作.类型){案例“添加":返回 [...状态,{地址:action.address,名称:act ..
发布时间:2022-01-01 09:54:42 其他开发

React - 在获取数据并使用该数据设置状态后,您如何清理 useEffect()?

我正在使用钩子 useEffect 向我的服务器发出提取请求,但我不断收到此警告: 警告:无法对卸载的组件执行 React 状态更新.这是一个空操作,但它表明您的应用程序中存在内存泄漏.要修复,请取消 useEffect 清理函数中的所有订阅和异步任务. 我了解此警告的原因,但我该如何清理它?我尝试了本文中建议的方法但没有成功:https://dev.to/pallymore/clea ..
发布时间:2021-12-31 16:24:05 其他开发

是“useEffect 缺少依赖项"吗?警告有时出错?

我已经使用钩子一段时间了,但我从来没有完全理解为什么 React 强迫我在 useEffect 中包含一些我不想要的依赖项. 我理解 useEffect 钩子的“依赖关系"的方式 添加您想要“聆听"的值,只要它们发生变化并触发您的效果.这与一个简单的效果完美配合: import React, {useEffect, useState} from "react";界面道具{id:字符串 ..
发布时间:2021-12-31 16:22:18 前端开发

React Hooks:将对象作为 useEffects 中的依赖项处理

更新:对于用例 1,是的,如果我在 useEffect 之外提取 search.value 并将其用作依赖项,则它可以工作. 但我在下面有一个更新的用例 用例 2:我想将 searchHits 对象传递给服务器.服务器反过来将其返回给我,并带有更新的值作为响应.如果我尝试使用 searchHits 对象,我仍然会遇到无限循环 状态:{可见:真实,加载:假,搜索: {价值: "",se ..
发布时间:2021-12-31 16:08:54 前端开发

获取api时未调用useEffect且未更新状态

我正在使用 useEffect 钩子从天气 api 获取数据并正确声明依赖项.我的状态仍未更新,因此我的渲染函数出现错误.我几乎尝试了从摆脱依赖数组到在依赖数组中声明倍数的所有方法.我不知道我的功能有什么问题.API 的 JSON 响应格式如下: {地点: {名称:“巴黎",地区:“法兰西岛",},当前的: {last_updated_epoch:1564279222,last_updated: ..
发布时间:2021-12-31 16:08:13 前端开发

如何修复“useEffect 缺少依赖项"?在自定义钩子中

我正在使用自定义钩子从 API 中提取一些数据,以便在一组 React 函数组件中使用.然而,esLint 抛出了一个可爱的警告: React Hook useEffect 缺少依赖项:'fetchFromAPI'.任何一个包括它或删除依赖数组. 我不认为这是一个依赖项,因为它在 useFetch() 内部.我需要这样做,因为我正在使用 await.我究竟做错了什么?可以关闭这条线的警 ..
发布时间:2021-12-31 16:03:23 其他开发

一般来说,在单个组件中使用一个或多个 useEffect 钩子更好吗?

我有一些副作用要应用到我的 React 组件中,我想知道如何组织它们: 作为单次使用效果 或几个 useEffects 在性能和架构方面哪个更好? 解决方案 您需要遵循的模式取决于您的用例. 第一:您可能会遇到需要在初始挂载时添加事件侦听器并在卸载时清理它们的情况,以及需要清理并重新添加特定侦听器的另一种情况道具变化. 在这种情况下,使用两个不同的useEffec ..
发布时间:2021-11-17 01:49:34 其他开发

在功能组件中反应承诺

我有一个功能组件,我想在其中将数据保存在我的输入表单中,使用 saveForm 方法将它们发送到我的 java API. 我怎样才能读取这个承诺的响应 props.saveForm(为了寻找潜在的服务器错误)在一个功能组件?我已经读到,在这些情况下,必须使用 useEffect 钩子..> 请赐教.谢谢你的智慧. 我在其他问题中找到的代码: useEffect(() => {con ..
发布时间:2021-11-15 04:46:19 其他开发

在功能组件中反应承诺

我有一个功能组件,我想在其中将数据保存在我的输入表单中,并使用 saveForm 方法将它们发送到我的 Java API. 我怎样才能读取这个承诺的响应 props.saveForm(为了寻找潜在的服务器错误)在功能组件中?我读到在这些情况下必须使用 useEffect 钩子..> 请赐教.谢谢你的智慧. 我在其他问题中找到的代码: useEffect(() => {const s ..
发布时间:2021-09-15 18:55:48 其他开发

useEffect 依赖数组导致无限循环

我在控制台中收到以下警告:第 19:6 行:React Hook useEffect 缺少依赖项:'data'.包括它或删除依赖数组 并且 res.data 在我控制台记录它时是一个空数组. 但是当我将 data 传递给依赖项数组时,我确实在控制台中得到了正确的 API 响应,但我得到了一个无限循环. 据我所知,这是使用 useEffect 时最容易陷入的陷阱之一,但我仍然很难思考如何 ..
发布时间:2021-09-15 18:55:45 其他开发

在 React 中执行 useEffect 时如何选择

我试图了解 useEffect() 在 React 中是如何工作的,以及为什么在最后执行而不是按照我的代码顺序执行.这个问题会导致我更大的程序出现问题.我的问题:是否有可能在执行此操作时进行选择? 控制台的日志,如你所见,不是打印顺序:( 0 个孩子 null App.js:11:102 个孩子 null App.js:16:101个孩子数组[“truc";] https://codes ..
发布时间:2021-09-15 18:55:39 前端开发