问题标签 [use-ref]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
63 浏览

javascript - 为什么行为不同?

createRef 和 ref={(c) => this.el = c} 有什么区别?

当我输出每个 ref 具有相同的元素但它不是假的。

为什么?

0 投票
1 回答
8179 浏览

javascript - 在 React 中动态添加后的 getElementById

我在我的 React 功能组件中动态添加卡片。卡片存储在状态中。我映射它们并给它们每个ID。OnClick 那些卡片我成功地得到了他们的 id。现在我想用 getElementById 来改变卡片颜色:

我尝试学习参考,但它们仅适用于类组件。那么如何在 React 中通过 id 访问我的元素呢?

0 投票
2 回答
8142 浏览

reactjs - 输入值清除 - React Hooks

我正在尝试使用下面的useRef单击按钮后清除输入是我的代码

单击按钮后,我清除了状态和输入值

输入值正在清除,但是显示浏览器调试器的状态没有改变,如果我们改变了输入字段那么状态正在改变,useState setGiftcode 没有改变组件的实际状态有没有其他方法可以做到这一点。请参阅下图了解。 在此处输入图像描述

0 投票
0 回答
307 浏览

reactjs - 未在 google-maps-react 上动态添加的新标记(使用 useRef)

我正在使用 google-maps-react 和 hook (react) 。

但是我有一个我无法解决的问题。

我期望在执行 HomContainer.tsx 的 onAddressSubmit 函数时创建一个新标记。

但是没有创建新的标记(没有渲染?)

函数地址提交

setCoordinates 部分正常执行并存储在 state 中。

但是,激活 toMarker 后,地图上不会创建新的标记。

你能找到解决方案吗?

它也缺少很多关于使用 useEffect 的内容。

你能指出代码吗?

感谢您阅读我的代码。

(我英语不太好……对不起!!!)

索引.tsx

容器.tsx

演示者.tsx

0 投票
1 回答
3891 浏览

reactjs - 我在反应函数组件中使用 React.useRef 时出错

我在反应功能组件中使用 React.useRef,在我在类组件中使用它之前收到错误消息,现在我已将其更改为反应功能组件,但我仍然在下面收到此错误消息。

React Hook "React.useRef" 在函数 "landingPage" 中被调用,它既不是 React 函数组件也不是自定义 React Hook 函数

您能否解释一下为什么我在放入功能组件后仍然收到此消息。这是我的代码

这是我在 app.js 中的代码

0 投票
0 回答
415 浏览

javascript - 输入使用 useRef 更改其值而不更新其状态

嘿伙计们,提前谢谢

我有以下问题,由于组件的渲染,使用输入组件并通过 useRef 获取其值,我想知道是否可以添加一个掩码函数并在输入中编辑此值,而不必将其呈现给每个键入的字符。为了性能。或者有人对如何做有任何提示吗?

使用的代码示例:

index.js

inputIcon.js

0 投票
1 回答
2990 浏览

javascript - 警告 findDomNode

我试图用material-ui和React制作一个选择菜单

但是当我单击按钮以在控制台中打开菜单时,我收到此警告:警告:在 StrictMode 中不推荐使用 findDOMNode。findDOMNode 被传递了一个在 StrictMode 中的 Transition 实例。相反,直接将 ref 添加到要引用的元素。

我该如何解决?

0 投票
1 回答
680 浏览

javascript - “useRefs”变量是 div 引用的初始值?

我试图用反应钩子构建一个音频进度条。我正在关注基于反应类的组件的教程,但对 refs 有点迷失。

当页面加载时,如何为我的 useRef 变量提供 div ref 的初始值?

一旦我开始玩,我就会收到一个错误,说无法读取 null 的偏移宽度。显然时间轴 ref 为空,因为它没有初始值。如何在 useEffect 挂钩中将其连接到具有时间轴 ID 的 div?

0 投票
1 回答
8725 浏览

reactjs - React 2020 中的 document.getElementById() 等效项

我有一个名为 Button.js 的组件,它有一个按钮,单击该按钮时我只想知道我是否正在访问另一个名为 Timer.js 的组件中的 div。在 vanilla javascript 中,我将简单地使用 document.getElementById() 来捕获 DOM 节点。这是如何在 React 中完成的?

我在文档中遇到了回调引用,但它不起作用。如果使用 ref 不是访问 DOM 元素的 React 方式,请向我推荐执行此操作的最佳方式。提前致谢。

按钮.js

计时器.js

0 投票
3 回答
3281 浏览

reactjs - 反应“useRef”:无法访问 .current 中的方法

因此,在我的 React Native 应用程序中,我想按照此处的指南集成滑块。

问题是,我想访问setLowValue().current属性的方法,正如指导网站useRef()末尾所指定的那样。我打印到控制台并看到指定为函数,所以它肯定存在。为什么我无法访问它?.currentsetLowValue()

这是我的代码:

帮助将不胜感激!