Digamos que tengo un paquete que exporta un tipo User
:
export const User: { name: string; };
Y quiero usar la propiedad de name
con alias como nombre de username
en mi código. En JavaScript normal, puedo hacer algo como esto:
const { User: { name: username } } = require('user.js'); /* do something with `username` ... */
Quiero convertir el archivo con el que estoy trabajando en TypeScript, por lo que usaré las importaciones del módulo ES6. ¿Cómo puedo lograr lo mismo que arriba usando import
en lugar de require
?
No puede desestructurar objetos en declaraciones de import
estáticas, pero puede cambiarles el nombre usando la palabra clave as
:
import {User as USER} from './user.js';
Si está de acuerdo con el uso de una importación dinámica , puede desestructurar:
const {User: {name: username}} = await import('./user.js');
Hay pros y contras en los métodos de importación estáticos y dinámicos sobre los que puede leer en los enlaces que compartí.