Todos los retos

TypeScript · media

Dos puertas

#30

Situación

El dashboard de home carga ahora primero user y luego prefs, en serie. Pero fetchUser solo resuelve después de que arranque la petición de preferencias, así que esperar a una antes de iniciar la otra bloquea la página.

Objetivo

Inicia las dos peticiones sin bloquearte y devuelve el usuario y el tema que correspondan. loadHome(1) resuelve a { user: "Ada", theme: "dark" }, y cualquier otro id devuelve su propio nombre.

El repo al empezar

workspace/
└── src/
    └── dashboard.ts   (awaits A before starting B; A refuses)

Checks que pondrás en verde

  • exporta loadHome
  • loadHome junta user y theme
  • otro id carga su propio user

Conceptos

async-awaitconcurrency

Juégalo en tu terminal

Con sharpen instalado, este comando abre exactamente este reto en tu arena local:

sharpen 30

¿Primera vez? La instalación completa está justo debajo.

Cómo jugar

  1. 1 Instala Claude Code si aún no lo tienes: claude.com/claude-code
  2. 2 Instala sharpen desde npm:
    npm install -g @juanwmedia/sharpen
  3. 3 Y lánzala; la arena se abre en tu navegador:
    sharpen 30
  4. o O pruébala sin instalar nada:
    npx @juanwmedia/sharpen 30
  5. 4 Y para actualizar cuando salga una versión nueva:
    sharpen update