Reactjs 如何正确调用子组件中传递的函数
我有两个组件,我想知道如何调用传递的函数。因为如果我传递->我在一个孩子中得到了一个对它的引用,所以当我想传递参数给它时,问题就出现了,因为它立即调用这是很清楚的Reactjs 如何正确调用子组件中传递的函数,reactjs,Reactjs,我有两个组件,我想知道如何调用传递的函数。因为如果我传递->我在一个孩子中得到了一个对它的引用,所以当我想传递参数给它时,问题就出现了,因为它立即调用这是很清楚的 class Parent extends Component { .... fn = (arg) => {console.log(arg)} render(){ return ( <Child myPassedFn={this.fn}>delete</button>
class Parent extends Component {
....
fn = (arg) => {console.log(arg)}
render(){
return (
<Child myPassedFn={this.fn}>delete</button>
)
}
}
class Child extends Component {
render(){
return (
<button onClick={this.props.myPassedFn('lul')}>delete</button>
)
}
}
你也可以这样写:
onClick={() => this.props.myPassedFn('lul')}
单击除方法之外的其他方法,并且您使用的方式是方法调用,它将返回值
您也可以使用第二种方法,上面的行只是其中的简写。really Appricate=在渲染中定义匿名函数将使使用shouldComponentUpdate优化子渲染变得困难,因为onClick道具将在每次渲染时更改。更好的方法是定义一个_handleClick处理程序,在每次组件呈现时使用相同的处理程序
onClick={() => this.props.myPassedFn('lul')}