Skip to content

Qquanwei/tiny-event-manager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Build Status npm version

tiny event manager

Javascript 轻量资源管理器

博客介绍: https://juejin.im/post/5bfe3d3be51d454cc05cca00

demo

import { createInterval, createTimeout, createEventListener } from 'tiny-event-manager';

const sub1 = createInterval(() => {}, 1000);
const sub2 = createTimeout(() => {}, 1000);
const sub3 = createEventListener(window, 'scroll', () => {});

const subscription = new Subscription();

subscription.add(sub1);
subscription.add(sub2);
subscription.add(sub3);

// subscription.unsubscribe will dispose all event resource

subscription.unsubscribe();

API

createInterval :: (callback, timeout) => Subscription

createTimeout :: (callback, timeout) => Subscription

createEventListener :: (element, eventName, callback) => Subscription

createPromise :: (callback) => Subscription

subscription = createPromise((resolve) => {
  resolve(this.fetchDone())
    .then(() => {
    })
})

Subscription :: constructor(teardownOrSubscription)

About

tiny event manager

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published