world-trigger

A small, easy, blazingly fast and scalable state-management solution for react.
1,321
Install
npm install world-trigger
Latest Version:1.1.1
License:MIT
Last Updated:Jan 12, 2024
Links: GitHub  ·  npm
Maintainer: mytabworks

World Trigger

This is use for Reactjs, React-Native, Vuejs, and any js framework out there, to trigger or dispatch registered callbacks on any component without using any context.

installation

npm i world-trigger

or

yarn add world-trigger

How to use


imports

import worldTrigger from "world-trigger"

Basic Usage

import worldTrigger from "world-trigger"

const handleTestTrigger = (data) => {
  console.log(`Yey! ${data.firstname} has trigger me.`)
}
// registered the trigger
worldTrigger.addTrigger('test.trigger', handleTestTrigger)

// unregistered the trigger
worldTrigger.removeTrigger('test.trigger', handleTestTrigger)

// dispatching the trigger with data
worldTrigger.dispatchTrigger('test.trigger', { firstname: 'JR' })



Reactjs

import React from "react"
import worldTrigger from "world-trigger"

export const App = () => {
    useEffect(() => {
      const handleTestTrigger = (data) => {
        console.log(`Yey! ${data.firstname} has trigger me.`)
      }

      worldTrigger.addTrigger('test.trigger', handleTestTrigger)

      return () => worldTrigger.removeTrigger('test.trigger', handleTestTrigger)
    }, [])
    
    return ( 
        <ButtonTrigger />
    );
}

const ButtonTrigger = () => { 
    const handleClick = () => {
      worldTrigger.dispatchTrigger('test.trigger', { firstname: 'JR' })
    }

    return (
        <button type="button" onClick={handleClick}>Trigger Me</button>
    );
}

License

MIT Licensed. Copyright (c) Mytabworks 2020.

Related Packages

mfo

MFO is the scaffold for rapid construction of the project. It provides a Webpack...

7,460
react-vuex

React bindings for Vuex

1,422 69
the-themex-project

Themex aims to prevent a blank screen in your IDE and serves as a solid foundati...

7,230 18
paymid-sdk

A frontend SDK for Paymid payment processing

15,682

Version History

Version Released License
1.1.1 MIT
1.1.0 MIT
1.0.2 ISC
1.0.1 ISC