Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

define-lazy-prop

sindresorhus123mMIT3.0.0TypeScript support: included

Define a lazily evaluated property on an object

lazy, property, properties, prop, define, object, value, lazily, laziness, evaluation, eval, execute, getter, function, fn, memoize, cache, defer, deferred

readme

define-lazy-prop

Define a lazily evaluated property on an object

Useful when the value of a property is expensive to generate, so you want to delay the computation until the property is needed. For example, improving startup performance by deferring nonessential operations.

Install

$ npm install define-lazy-prop

Usage

import defineLazyProperty from 'define-lazy-prop';

const unicorn = {
    // …
};

defineLazyProperty(unicorn, 'rainbow', () => expensiveComputation());

app.on('user-action', () => {
    doSomething(unicorn.rainbow);
});

API

defineLazyProperty(object, propertyName, valueGetter)

object

Type: object

Object to add the property to.

propertyName

Type: string

Name of the property to add.

valueGetter

Type: Function

Called the first time propertyName is accessed. Expected to return a value.