React 状态提升 子组件传递数据到父组件
React 状态提升,类似于 Vue 的 event emit,只是实现的方式不同
父组件
import React, { Component } from 'react'; import logo from './logo.svg'; import './App.css'; import Name from './Name'; class App extends Component { constructor(props) { super(props); this.nameChange = this.nameChange.bind(this); } render() { return ( <div className="App"> <Name onNameChange={this.nameChange}></Name> </div> ); } nameChange(value) { console.log(value); } } export default App;
子组件:
import React, { Component } from 'react'; class Name extends Component { constructor(props) { super(props); this.nameChange = this.nameChange.bind(this); } render() { return ( <div> <label>Name:</label> <input type="text" onChange={this.nameChange} /> </div> ); } nameChange(event) { this.props.onNameChange(event.target.value); } } export default Name;
当在子组件更改 props 值时,父组件能够实时接收到,可以看到组件中的 state,和 props 都是响应式的。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论