LogoLogo
  • Eventrix
  • Introduction
    • Installation
    • Quick start
    • Getting started
    • Demo
    • About
  • Devtools - EventrixDebugger
  • Use cases
    • Handle errors
    • Simple form management
    • Communication between components
    • Next.js
    • Basic setup on project
    • Fetch list and display in component
  • CONTEXT
    • EventrixProvider
    • PersistStoreGate
    • EventrixScope
  • MIGRATION
    • Redux -> Eventrix
  • Receivers
    • EventsReceiver
    • RequestsHandler
    • fetchToStateReceiver
    • fetchStateReceiver
    • fetchHandler
  • HOC
    • withEventrix
    • withEventrixState
  • HOOKS
    • useEventrixState
    • useEmit
    • useEvent
    • useEventState
    • useFetchToState
    • useReceiver
    • useFetchState
  • CLASS DECORATORS
    • @useEventrix
    • @receiver
    • @fetchToState
    • @listener
  • COMPONENT DECORATORS
    • @eventrixComponent
    • @eventListener
    • @stateListener
    • @eventrixState
Powered by GitBook
On this page

Was this helpful?

  1. CLASS DECORATORS

@listener

This decorator register class method as listener in eventrix.

useEventrix" decorator is required if You want use any of eventrix decorators.

import React from 'react';
import { useEventrix, listener } from 'eventrix';

@useEventrix
class ClientsService {
    constructor(services) {
        this.counter = 0;
    }

    @listener('Clients:create.success')
    createCounter(eventData) {
        this.counter ++;
        console.log(this.counter)
    };
}

export default ClientsService;

Below example of code without decorators.

import React from 'react';

class ClientsService {
    constructor(services) {
        this.eventrix = services.eventrix;
        this.eventrix.listen('Clients:create.success', this.createCounter);
    }

    createCounter = (eventData) => {
        this.counter ++;
        console.log(this.counter)
    };
}

export default ClientsService;
Previous@fetchToStateNext@eventrixComponent

Last updated 3 years ago

Was this helpful?