react 组件与组件之间通讯
生活随笔
收集整理的這篇文章主要介紹了
react 组件与组件之间通讯
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
首先需要項目中安裝events 包: npm install events --save
在src下新建一個util目錄里面建一個events.js
import { EventEmitter } from 'events';export default new EventEmitter();list1.jsximport React, { Component } from 'react';
import emitter from '../util/events';class List extends Component {constructor(props) {super(props);this.state = {message: 'List1',};}componentDidMount() {// 組件裝載完成以后聲明一個自定義事件this.eventEmitter = emitter.addListener('changeMessage', (message) => {this.setState({message,});});}componentWillUnmount() {emitter.removeListener(this.eventEmitter);}render() {return (<div>{this.state.message}</div>);}
}export default List;List2.jsx
import React, { Component } from 'react';
import emitter from '../util/events';class List2 extends Component {handleClick = (message) => {emitter.emit('changeMessage', message);};render() {return (<div><button onClick={this.handleClick.bind(this, 'List2')}>點擊我改變List1組件中顯示信息</button></div>);}
}
export default List2;APP.jsximport React, { Component } from 'react';
import List1 from './components/List1';
import List2 from './components/List2';export default class App extends Component {render() {return (<div><List1 /><List2 /></div>);}
}
react 兄弟組件如何調用對方的方法??https://segmentfault.com/a/1190000016764713
轉載于:https://www.cnblogs.com/whlBooK/p/11207532.html
總結
以上是生活随笔為你收集整理的react 组件与组件之间通讯的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 使用ASP.NET AJAX异步调用We
- 下一篇: 前后端分离之JWT用户认证