Letra de imprenta: cómo importar la clase que se exportó el uso de `exportación = uuid`

votos
0

Estoy intentando utilizar el node_module uuid-jsa máquina de escribir. He instalado el módulo y la tipificación.

Pregunta: ¿Cómo se importa el módulo?


El método que yo quiero usar es uuid.create.

Esto se define en uuid-jstipificaciones 's como este:

export = uuid;
declare class uuid {
    equals(uuid: uuid): boolean;
    ... 
    static create(version?: number): uuid;
    ...
}

El documento mecanografiado dice que:

Cuando se importa un módulo utilizando la exportación =, módulo de importación-mecanografiado específica = require ( módulo) debe ser utilizado para importar el módulo.

Que parece dar a entender que tengo que hacer esto:

import UUID = require('uuid-js');

Lo que parece compilar a esto:

const UUID = require(uuid-js)  

¿Hay una razón por la que debería usar la importación en lugar de const en mi código? ¿Por qué no sólo tiene que utilizar el código compilado directamente?

Siento que requieren el uso en absoluto es impar. Tal vez, estoy mejor sin el uso de las tipificaciones o haciendo otra cosa ...?

¿Cuál es la diferencia entre el uso de:

import UUID = require('uuid-js');

Y

const UUID = require(uuid-js)  

Yo también trato de usar una estrategia más tradicional de importación como Madara Uchiha sugirió, pero me da errores.

Utilizando import * as UUID from 'uuid-js'los resultados de:

error TS2497: Module '.../node_modules/@types/uuid-js/index' resolves to a non-module entity and cannot be imported using this construct.

Y el uso de import UUID from 'uuid-js';los resultados en:

error TS1192: Module '.../node_modules/@types/uuid-js/index' has no default export.
Publicado el 29/01/2018 a las 15:39
fuente por usuario
En otros idiomas...                            


2 respuestas

votos
1

Tanto import something = require('something')y export = somethingson heredados sintaxis inventadas por mecanografiado antes módulos ES2015 eran cosa.

Ahora, utilizamos la sintaxis módulo estándar, así:

import * as UUID from 'uuid-js'; // if uuid-js has no export default
// or
import UUID from 'uuid-js'; // if it does.

Las tipificaciones fragmento de código que usted plantea indica que se debe utilizar la primera.

Respondida el 29/01/2018 a las 15:43
fuente por usuario

votos
0

¿Cómo son estas diferentes

importTambién importa los tipos . const/requireno.

Respondida el 29/01/2018 a las 15:42
fuente por usuario

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more