Skip to main content

@boost/decorators

Build Status npm version npm deps

Experimental decorators for common patterns.

import { Bind, Memoize } from '@boost/decorators';
class Example {    @Bind()    referencedMethod() {        return this; // Class instance    }
    @Memoize()    someExpensiveOperation() {        // Do something heavy    }}

Features#

  • @Bind - Autobind a method's this to the class context.
  • @Debounce - Defer the execution of a method in milliseconds.
  • @Deprecate - Mark a property, method, or class as deprecated.
  • @Memoize - Cache and return the result of a method execution.
  • @Throttle - Throttle the execution of a method to a timeframe in milliseconds.

Installation#

yarn add @boost/decorators

Documentation#

Index

Type aliases

MemoizeCache

MemoizeCache<T>: Map<string, { time?: number | null; value?: T }>

Type parameters

  • T

MemoizeHasher

MemoizeHasher: (...args: unknown[]) => string

MemoizedFunction

MemoizedFunction<T>: (...args: unknown[]) => T

Type parameters

  • T