react 类父组件如何触发函数子组件中的方法
时间: 2024-03-20 10:35:33 浏览: 223
在React中,可以通过使用ref来触发子组件中的方法。具体步骤如下:
1. 在父组件中创建一个ref对象,并将其绑定到子组件上。可以使用回调函数的方式来实现这一步骤。例如,在父组件的render方法中添加以下代码:
```javascript
import React from "react";
import Child from "./Child";
class Parent extends React.Component {
constructor(props) {
super(props);
this.childRef = React.createRef();
}
handleClick = () => {
this.childRef.current.childMethod();
};
render() {
return (
<div>
<button onClick={this.handleClick}>触发子组件方法</button>
<Child ref={(r) => (this.childRef = r)} />
</div>
);
}
}
export default Parent;
```
2. 在子组件中定义需要被触发的方法。例如,在子组件的class中添加以下代码:
```javascript
import React from "react";
class Child extends React.Component {
childMethod = () => {
console.log("子组件方法被触发");
};
render() {
return <h1>子组件</h1>;
}
}
export default Child;
```
当点击父组件中的按钮时,会触发父组件中的handleClick方法,该方法通过ref调用子组件中的childMethod方法。子组件中的childMethod方法会在控制台输出"子组件方法被触发"。
阅读全文