MCPcopy
hub / github.com/preactjs/preact / createLazy

Function createLazy

compat/test/browser/suspense-utils.js:33–53  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

31 * @returns {[typeof Component, (c: ComponentType) => Promise<void>, (e: Error) => Promise<void>]}
32 */
33export function createLazy() {
34 /** @type {(c: ComponentType) => Promise<void>} */
35 let resolver, rejecter;
36 const Lazy = lazy(() => {
37 let promise = new Promise((resolve, reject) => {
38 resolver = c => {
39 resolve({ default: c });
40 return promise;
41 };
42
43 rejecter = e => {
44 reject(e);
45 return promise;
46 };
47 });
48
49 return promise;
50 });
51
52 return [Lazy, c => resolver(c), e => rejecter(e)];
53}
54
55/**
56 * Returns a Component and a function (named `suspend`) that will suspend the component when called.

Callers 4

renderWithResolveOrderFunction · 0.90
suspense.test.jsxFile · 0.90
suspendFunction · 0.70

Calls 2

lazyFunction · 0.90
resolveFunction · 0.85

Tested by 1

renderWithResolveOrderFunction · 0.72

Used in the wild real call sites across dependent graphs

searching dependent graphs…