react-hooks相关内容

如何在 React 组件中每分钟调用一个函数?

我制作了一个表格来获取股票报价,效果很好,但是当我尝试在组件中放置一个包含 setState 的函数时,它陷入了无限循环,它会立即触发 setState 并重新渲染并再次触发. 如何在加载此组件时调用此函数而不触发无限循环?我会每 10 秒或每分钟调用一次该函数. import React, { useState } from 'react'从 '../../api' 导入 api函数 C ..
发布时间:2021-12-29 11:42:46 前端开发

为 React Context 实现 useSelector 等价物?

有很多文章展示了如何用上下文和钩子替换 Redux(参见 (注意:React Github 页面上的这个讨论表明它不能完成) 解决方案 不,这不可能.每当您将新的上下文值放入提供程序时,所有 使用者都会重新渲染,即使他们只需要该上下文值的一部分. 这是特别是我们放弃使用上下文的原因之一在 React-Redux v6 中传播状态更新,并在 v7 中切换回使用直接存储订阅. 有 ..
发布时间:2021-12-29 11:38:37 其他开发

清除 React Hooks 中未安装组件的内存泄漏

我是使用 React 的新手,所以这可能很容易实现,但即使我做了一些研究,我也无法自己弄清楚.如果这太愚蠢,请原谅我. 上下文 我将 Inertia.js 与 Laravel(后端)和 React(前端)适配器一起使用.如果你不知道惯性,它基本上是: Inertia.js 可让您快速构建现代单页 React、Vue 和使用经典服务器端路由和控制器的 Svelte 应用. 问 ..
发布时间:2021-12-29 10:11:14 前端开发

正确使用 React hooks + WebSockets

我需要连接到 WebSockets 服务器并记录它的消息.使用 React 类组件,我会将这个逻辑放在 componentDidMount 生命周期钩子中并愉快地继续,但我不确定如何使用钩子正确实现它. 这是我的第一次尝试. import React, {useEffect} from 'react';导出默认函数 AppWs() {useEffect(() => {让 ws = new ..
发布时间:2021-12-25 13:44:07 前端开发

为什么 React Hook useState 使用 const 而不是 let

使用 React useState Hook 的标准方法如下: const [count, setCount] = useState(0); 然而,这个 const count 变量显然会被重新分配给不同的原始值. 为什么变量没有定义为let count? 解决方案 显然将被重新分配给不同的原始值 不是真的.当组件被重新渲染时,函数再次执行,创建一个新的作用域,创建一个 ..
发布时间:2021-12-23 11:49:25 前端开发

哪个反应钩子与 firestore onsnapshot 一起使用?

我在 React Native 应用程序中使用了很多 firestore 快照.我也在使用 React 钩子.代码如下所示: useEffect(() => {someFirestoreAPICall().onSnapshot(snapshot => {//当组件初始加载时,将所有加载的数据添加到状态.//当 firestore 上的数据发生变化时,我们会在这里收到更新//回调,然后根据当前状态 ..

react-navigation:检测屏幕、标签栏何时被激活/出现/聚焦/模糊

以前,当我想在打开屏幕时执行某些操作时,我将它们放在 componentDidMount 中.例如我可以获取一些数据. 像这样. componentDidMount() {this.updateData();} 但是使用 react-navigation componentDidMount 只在用户第一次打开屏幕时发生一次,如果以后用户再次打开这个页面不会触发 componentDidM ..

如何使用 TypeScript 在 React Native 中将 forwardRef 与 FunctionComponent 一起使用

我已经查看了许多文档和示例,但我似乎仍然不太明白如何在 React Native 中将 forwardRef 与带有 TypeScript 的功能组件一起使用.下面是我使用自定义函数创建 MyCustomComponent 的示例,我尝试通过创建引用从父级调用该函数.但是,由于 ref 定义不正确且 null,我显然收到一条错误消息,告诉我该函数不存在.请帮助我了解如何在 React Native ..
发布时间:2021-12-06 21:54:58 前端开发

带有钩子的 React 函数组件与类组件

随着 React 中 hooks 的引入,现在的主要困惑是何时使用带有钩子和类组件的函数组件,因为在钩子的帮助下,即使在函数组件中也可以获得state和部分生命周期钩子.所以,我有以下问题 钩子的真正优势是什么? 何时使用带有钩子的函数组件与类组件? 例如,带有钩子的函数组件不能像类组件那样在性能上有所帮助.他们不能跳过重新渲染,因为他们没有实现 shouldComponentUpd ..
发布时间:2021-12-02 10:45:50 前端开发

从组件中的 useState 多次调用状态更新程序会导致多次重新渲染

我第一次尝试 React 钩子,一切似乎都很好,直到我意识到当我获取数据并更新两个不同的状态变量(数据和加载标志)时,我的组件(数据表)被渲染了两次,甚至尽管对状态更新器的两次调用都发生在同一个函数中.这是我的 api 函数,它将两个变量返回给我的组件. const getData = url =>{const [data, setData] = useState(null);const [lo ..
发布时间:2021-12-02 10:35:06 前端开发

为什么 useState 不会触发重新渲染?

我已经初始化了一个数组状态,当我更新它时,我的组件不会重新渲染.这是一个最小的概念验证: function App() {const [numbers, setNumbers] = React.useState([0, 1, 2, 3]);console.log(“渲染中...");返回 ( {numbers.map(number => ( {数字} ))}{让旧 = 数字;旧 [0] ..
发布时间:2021-12-02 10:30:36 前端开发

反应 useEffect 比较对象

我正在使用 react useEffect 钩子并检查对象是否已更改,然后再次运行钩子. 我的代码看起来像这样. const useExample = (apiOptions) =>{const [数据,更新数据] = useState([]);useEffect(() => {const [data, updateData] = useState([]);doSomethingCool( ..
发布时间:2021-12-02 10:24:51 前端开发

如何在 React Hooks 的对象数组中更新状态“onChange"

我已经检索了使用 useState 存储在对象数组中的数据,然后将数据输出到表单字段中.现在我希望能够在我输入时更新字段(状态). 我见过有人更新数组中属性的状态的例子,但从来没有更新过对象数组中的状态,所以我不知道该怎么做.我已经将对象的索引传递给回调函数,但我不知道如何使用它来更新状态. //示例数据结构常量数据 = [{编号:1,姓名:'约翰',性别:'m'}{编号:2,name: ..
发布时间:2021-12-02 10:24:44 前端开发