【发布时间】:2018-12-08 19:28:37
【问题描述】:
render() {
return (
<input
onChange={this.handleChange}
value={this.props.transcript}
type='text
/>
)
}
在上面的例子中,如果使用键盘输入改变文本值,会触发 onChange 事件,但是如果通过 this.props.transcript 动态改变文本值,则不会触发 onChange 事件。如何解决这个问题?
【问题讨论】:
-
你为什么需要改变它?这似乎是不必要的要求。
-
因为我想为键盘输入更改以及 this,props.transcript 更改时触发 onChange 事件@Justcode
-
这可能会对您有所帮助。 stackoverflow.com/questions/136617/…
-
查看
componentDidUpdate方法 (reactjs.org/docs/react-component.html#componentdidupdate) - 它使您可以访问以前的道具,以便您可以比较props.transcript值以查看它是否已更改,然后调用this.handleChange如果需要。
标签: javascript reactjs events