next.js/test/e2e/app-dir/cache-components/app/client-utils.ts
client-utils.ts24 lines440 B
export function createWaiter() {
  let cached = null
  function wait() {
    if (typeof window === 'undefined') {
      if (cached) {
        return cached
      }
      cached = new Promise((r) => process.nextTick(r))
      return cached
    } else {
      if (cached) {
        return cached
      }
      cached = Promise.resolve()
      return cached
    }
  }

  function cleanup() {
    cached = null
  }
  return { wait, cleanup }
}
Quest for Codev2.0.0
/
SIGN IN