react-hooks相关内容
我想使用 React 在表格中显示一些记录,但我收到了这个错误: 无效的挂钩调用.Hooks 只能在 a 的主体内部调用功能组件.这可能发生在以下情况之一原因: 您的 React 和渲染器版本可能不匹配(例如 React DOM) 您可能违反了 Hooks 规则 您可能在同一个应用中拥有多个 React 副本,请参阅有关如何调试和解决这个问题. import React, {
..
..
如何在 useState 数组 React 钩子中推送元素?这是反应状态下的旧方法吗?还是新的东西? 例如setState 推送示例 ? 解决方案 当你使用 useState,可以获取状态项的更新方法: const [theArray, setTheArray] = useState(initialArray); 然后,当您想添加一个新元素时,您可以使用该函数并传入新数组或将创建
..
假设我有 3 个输入:rate、sendAmount 和 receiveAmount.我将这 3 个输入放在 useEffect 差异参数上.规则是: 如果 sendAmount 发生变化,我计算 receiveAmount = sendAmount * rate 如果receiveAmount发生变化,我计算sendAmount = receiveAmount/rate 如果汇率发生变
..
我正在尝试新的 React Hooks 并有一个带有时钟组件计数器应该每秒增加一次.但是,该值不会增加超过 1. function Clock() {const [时间,setTime] = React.useState(0);React.useEffect(() => {常量计时器 = window.setInterval(() => {设置时间(时间 + 1);}, 1000);返回()
..
使用 React 16.8.6(在以前的版本 16.8.3 上很好),当我尝试防止获取请求上的无限循环时出现此错误: ./src/components/BusinessesList.js第 51 行:React Hook useEffect 缺少依赖项:'fetchBusinesses'.要么包含它,要么移除依赖数组 react-hooks/exhaustive-deps 我一直无法找到停止无
..
..
我正在尝试在 React-Native 中使用现代 Context API,但出现以下错误: TypeError: TypeError: undefined is not an object (评估'上下文._上下文') 我的 createDataContext.js: import React, { useReducer } from 'react'导出默认值(reducer,ac
..
App.js: 函数 App() {常量 [items, setItems] = useState([]);使用效果(() => {常量 searchDB = () =>{fetch("http://127.0.0.1:8443/subColumns/5/?key=fc257229-8f91-4920-b71f-885403114b35", {模式:'cors',凭据:“包括"}).then(r
..
我需要执行一个返回 URL 的 fetch API 调用,对返回的 URL 执行某些操作,然后在 60 秒后刷新 URL.这是我可以在没有钩子的情况下轻松实现的目标,但我想要一个钩子解决方案. 重要提示:我不打算将其重构为多个组件,或者为计时器或 API 调用创建自定义挂钩. 编辑:问题是 - 这是在钩子环境中处理计时器的正确方法吗?有没有更好的办法? import React, {
..
我正在使用钩子 useEffect 向我的服务器发出 fetch 请求,但我不断收到以下警告: 警告:无法对未安装的组件执行 React 状态更新.这是一个空操作,但它表明您的应用程序中存在内存泄漏.要解决此问题,请在 useEffect 清理函数中取消所有订阅和异步任务. 我了解此警告的原因,但如何清除它?我尝试过这篇文章中建议的方法,但没有成功:https://dev.to/pal
..
我有一个包含一些状态的组件.有什么区别 示例 1: 函数 CompA() {[a, setA] = useState(0);[b, setB] = useState("Test");return (
{{ a }} 和 {{ b }});} 和示例 2: 函数 CompA() {[state, setState] = useState({a: 0, b: "Test
..
我有一些可清除的选择,我想将状态中的 applet 字段重置为空数组. const defaultFormValues = { device: { ...initialDevice }, applet: [] };const { control, getValues, setValue, reset, handleSubmit } = useForm({模式:“全部",reValidateMod
..
根据react文档,useEffect会在重新运行useEffect部分之前触发清理逻辑. 如果你的效果返回一个函数,React 会在需要清理的时候运行它... 没有用于处理更新的特殊代码,因为 useEffect 默认处理它们.它会在应用下一个效果之前清理之前的效果... 但是,当我在 useEffect 中使用 requestAnimationFrame 和 cancelAn
..
..
由于某种原因,在我的代码中,每当我单击取消按钮时,disableAccount 按钮的 onClick 事件就会被激活.因此,取消将 isEditMode 设置为 false,但 disableAccount 将其设置回 true,从而阻止我在 UI 中看到任何明显的变化.这是一个 next.js 项目. 从'react'导入反应;从'../Input/TextInput'导入TextInput
..
我正在为我的编辑数据表单使用 react-hook-form npm 模块.下面是我的 API 响应示例: {UUID:“xxxxxx-bd10-473e-a765-xxxxxx"地址 1:“地址 1";地址2:“地址2";地址3:“"城市:“xxxxx"联系人:“uxxxxxb"国家:“xxxxxx"电子邮件:“xxxxxx@email.com"链接:{公司:'xxxxxx-4689-4689
..
oldRunIn为undefined时下面代码的输出与效果触发时的预期一致: 效果正在运行 setState 正在运行 但是,下次使用定义的状态变量 runInArrow 运行 useEffect 时,在 setState 函数中称为 oldRunInArrow,输出为: 效果正在运行 setState 正在运行 setState 正在运行 setStat
..
尝试在 NextJS 中使用 React Hooks 时,我继续收到以下错误: 钩子只能在函数组件内部调用. 此问题仅在 Windows 上出现,并且在 Mac 上运行良好. 这是一个有据可查的问题,我已经解决了许多建议的解决方案,包括: 多个版本的 React 或 React DOM 在 next.config.js 中修改 webpack 设置链接到特定的节点模块包
..
在安装我的组件后,我正在从公共 API 加载数据.加载数据时,我将其传递给减速器,但它总是触发两次.这就是我所拥有的: function MyComponent(props) {功能减速器(数据,动作){开关(动作.类型){案例“初始化":返回 action.payload;案例“ADD_NEW":const newData = {...数据};newData.info.push({});返回新
..