【发布时间】:2018-04-29 15:55:54
【问题描述】:
我想从父组件调用子函数所以我在这里发现了一个问题
所以我用这种方式来称呼它(来自第一个答案和第二个方法)。
现在的问题是如何在子 getAlert 函数中设置状态
class Parent extends Component {
render() {
return (
<div>
<Child ref={instance => { this.child = instance; }} />
<button onClick={() => { this.child.getAlert(); }}>Click</button>
</div>
);
}
}
class Child extends Component {
constructor(){
super();
this.state = {message:""};
}
getAlert() {
alert('clicked');
//HERE I NEED TO SETSTATE
}
render() {
return (
{this.state.message!=""?(
<h1>{this.state.message}</h1>
):(
<h1>Hello</h1>
)}
);
}
}
在 child 的 getAlert 函数中,我需要 setState 但我做不到。请提供任何解决方案
【问题讨论】:
-
父或子本身的setState
-
我认为问题在于绑定。绑定函数getAlert
-
能贴一下代码sn-p怎么解决
标签: reactjs function components setstate