@ouroboros/events
Version:
Package to give the ability to subscribe to and trigger synchronous events in javascript. Useful for passing data around a project without creating import conflicts.
54 lines (42 loc) • 1.32 kB
Markdown
# @ouroboros/events
[](https://www.npmjs.com/package/@ouroboros/events) 
A library to give the ability to subscribe to and trigger synchronous events in javascript. Useful for passing data around a project without creating import conflicts / circular dependencies.
## Installation
npm
```bash
npm install @ouroboros/events
```
## Getting Started
Import events into your code
```javascript
import events from '@ouroboros/events';
```
Subscribing and unsubscribing in a React useEffect hook:
```javascript
export default function App() {
useEffect(() => {
const headerClick = (element) => {alert(`Header ${element} element was clicked!`)}
events.subscribe('header', headerClick);
return () => {
events.unsubscribe('header', headerClick');
}
}, []);
return (
<Header />
)
}
```
Triggering an event from another component:
```javascript
export default function Header(props) {
return (
<div onClick={() => {
events.trigger('header', 'div');
}}>
<p onClick={() => {
events.trigger('header', 'p');
}}>Header Content</p>
</div>
);
}
```