react react-dom.development.js:13072 Uncaught Error: Function components cannot have string refs. We recommend using useRef() instead.
时间: 2024-12-28 08:31:38 浏览: 10
React 中遇到这个错误通常是由于尝试在函数组件(Function Component)中使用 `ref` 来引用 DOM 元素,而 React 对于函数组件并不支持直接字符串 ref。字符串 ref 已不再推荐用于现代 React 开发,因为它会导致一些难以调试的问题,并且在性能上不如其他替代方案。
建议改用 `useRef()` Hook,这是一个内置的 React Hook,它返回一个可变的、始终指向同一点的对象,非常适合用于处理DOM元素引用。例如:
```jsx
import { useRef } from 'react';
function MyFunctionComponent() {
const elementRef = useRef(null);
// 使用elementRef.current来访问DOM元素
function handleClick() {
console.log(elementRef.current);
}
return (
<button onClick={handleClick}>点击我</button>
);
}
```
阅读全文