Este artículo es un artículo espejo de traducción automática, por favor haga clic aquí para saltar al artículo original.

Vista: 10533|Respuesta: 0

[TypeScript] Typescrip{filter}t module

[Copiar enlace]
Publicado en 22/10/2018 17:21:45 | | |
En el estándar ECMAscrip{filtering}t 2015, Javascrip{filtering}t añade el concepto de módulos. Typescrip{filter}t también sigue este concepto.

1. Importación y exportación de módulos

Los módulos se ejecutan en su propio ámbito, no en el ámbito global; Esto significa que las variables, funciones, clases, etc. definidas en un módulo no son visibles fuera del módulo a menos que las exportes explícitamente usando una de las exportaciones. Por otro lado, si quieres usar variables, funciones, clases, interfaces, etc. exportadas de otros módulos, debes importarlas usando una de las importaciones.

Los módulos son autodeclarativos. En Typescrip{filter}t, la relación entre los dos módulos se establece mediante la importación y exportación a nivel de archivo. Aquí tienes un ejemplo básico:

animal.ts

app.ts

En el ejemplo anterior, un Animal-similar se declara en la animal.ts y se exporta mediante exportación. En el app.ts, especifica la ruta relativa del archivo e impórtala mediante la importación para usar la clase Animal.

Como Javascrip{filter}t tiene dos métodos de referencia de módulos diferentes, al compilar a Javascrip{filter}t, puedes especificar el método de referencia de módulo compilado a través del archivo de configuración Typescrip{filtering}t tsconfig.json

A continuación se presentan los contenidos del archivo Javascrip{filter}t compilado de diferentes maneras

Commonjs

AMD


2. Renombramiento de importación y exportación

El nombre del objeto interno que se usa por defecto al importar y exportar módulos. Typescrip{filter}t también soporta cambiar de nombre antes y después de la exportación. Modifica el ejemplo anterior

animal.ts

app.ts

Al importar y exportar, los módulos se renombran usando la palabra clave as.

Una cosa a tener en cuenta aquí es que cuando se renombra el módulo exportado, el nombre del módulo antes de la importación debe ser el mismo que el nombre del módulo renombrado exportado, de lo contrario el compilador mostrará un mensaje de error. Por ejemplo, si el módulo exportado se renombra como ANI, el nombre del módulo antes de la palabra clave as debe ser ANI al importar este módulo en otro app.ts de archivo.

Alternativamente, si no conoces el nombre del módulo importado, puedes reemplazarlo por un signo *

En el ejemplo anterior, si renombras todos los módulos sustituidos por el signo * a animal_module, puedes acceder a todo el contenido exportado del módulo a través de animal_module objeto.

3. Exportar y exportar múltiples objetos

Normalmente, en el módulo se definen varios tipos de objetos y luego se exportan juntos. También puede haber varios módulos en la importación

animal.ts

app.ts

Al exportar, puedes reensamblar el objeto tipo que quieres exportar en un objeto JSON y luego exportarlo. Una vez importado, el contenido puede accederse mediante objetos de módulo renombrados.

4. Exportación predeterminada

Solo puede haber una exportación predeterminada para un módulo

animal.ts

app.ts

En el ejemplo anterior, la clase Animal se exporta usando la palabra clave predeterminada. A diferencia de las importaciones normales, al importar módulos de exportación por defecto, puedes especificar directamente el nombre del módulo importado sin encerrarlo entre corchetes con {}.

5. Módulo de carga dinámica

Porque en Javascrip{filter}t hay dos formas de cargar módulos: CommonJS y AMD. Al usar Typescrip{filter}t, necesitas escribir código diferente dependiendo del contenido de configuración de la compilación final para generar Javascrip{filter}t.

Archivo de módulo animal.ts

Referencia de la forma CommonJS:

app.ts

Cita de AMD Way:

app.ts







Anterior:Herramienta de captación de códigos de activación de BonusCloud [con código fuente]
Próximo:Informe de recién llegado, ¿cómo lo consiguió MB?
Renuncia:
Todo el software, materiales de programación o artículos publicados por Code Farmer Network son únicamente para fines de aprendizaje e investigación; El contenido anterior no se utilizará con fines comerciales o ilegales; de lo contrario, los usuarios asumirán todas las consecuencias. La información de este sitio proviene de Internet, y las disputas de derechos de autor no tienen nada que ver con este sitio. Debes eliminar completamente el contenido anterior de tu ordenador en un plazo de 24 horas desde la descarga. Si te gusta el programa, por favor apoya el software genuino, compra el registro y obtén mejores servicios genuinos. Si hay alguna infracción, por favor contáctanos por correo electrónico.

Mail To:help@itsvse.com