Appearance
pMemoizeDecorator
▸ pMemoizeDecorator(options?): (target: any, propertyKey: any, descriptor: any) => void
- Only class methods and getters/setters can be memoized, not regular functions (they aren't part of the proposal);
- Only TypeScript’s decorators are supported, not Babel’s, which use a different version of the proposal;
- Being an experimental feature, they need to be enabled with
--experimentalDecorators; follow TypeScript’s docs.
参数
| Name | Type |
|---|---|
options | Object |
返回值
fn
A decorator to memoize class methods or static class methods.
▸ (target, propertyKey, descriptor): void
参数
| Name | Type |
|---|---|
target | any |
propertyKey | any |
descriptor | any |
返回值
void
示例
import {pMemoizeDecorator} from 'p-memoize';
class Example {
index = 0
@pMemoizeDecorator()
async counter() {
return ++this.index;
}
}
class ExampleWithOptions {
index = 0
@pMemoizeDecorator()
async counter() {
return ++this.index;
}
}