1.0.0 • Published 6 years ago

sim-event-bus v1.0.0

Weekly downloads
-
License
MIT
Repository
-
Last release
6 years ago

EventBus

Introduction

This EventBus is also the publish and subscribe event. It supports subscribing, publishing, subscribing once, and canceling all subscriptions.

How To Use

SetUp

$ npm i event-bus 

Usage

// you can use as it 
import React, {useEffect, useState} from 'react';
import EventBus from 'event-bus';
export default function () {
    // state
    const [content, setContent] = useState('');
    // componentDidUpdate
    useEffect(() => {
        const token = EventBus.subscribe('message', data => {
            setContent(data);
        })
        
        // componentWillUnMount
        return () => {
           EventBus.unsubscribe(token); 
          
        }
    }, []); 
   
    const publish = () => {
        EventBus.publish('message', 'New Message');
    };
    
    return (
        <div className="container">
            <button onClick={publish}>发布</button>
            <p>{content}</p>
        </div>
     )
}


// If you only need to subscribe once, then you only need to use
// EventBus.once(topic, fn);
// You don't need to unsubscribe when components are uninstalled
1.0.0

6 years ago