react的函数式组件中怎么使用Ref
时间: 2024-09-11 15:13:48 浏览: 45
在React的函数式组件中使用Ref可以通过`React.useRef()` Hook来创建。这个Hook返回一个可变的ref对象,其`.current`属性被初始化为传递给`useRef`的参数。与类组件中的`React.createRef()`创建的ref不同,`useRef`创建的ref在整个组件的生命周期内保持不变。
下面是如何在函数式组件中使用`useRef`的一个例子:
```javascript
import React, { useRef } from 'react';
function MyComponent() {
// 创建一个ref对象
const myRef = useRef(null);
// 设置ref的current属性
function focusInput() {
myRef.current.focus();
}
return (
<div>
<input type="text" ref={myRef} />
<button onClick={focusInput}>Focus the input</button>
</div>
);
}
```
在上面的例子中,`useRef`用来获取DOM元素的引用。我们传递了`null`作为参数给`useRef`,然后把返回的ref对象的`.current`属性设置为`<input>`元素。这样,我们就能够在函数式组件中获取和操作DOM元素了。
阅读全文