Es una exportación con nombre frente a una exportación predeterminada. export const
es una exportación con nombre que exporta una declaración o declaraciones constantes.
Para enfatizar: lo que importa aquí es la export
palabra clave que const
se usa para declarar una declaración o declaraciones constantes. export
también se puede aplicar a otras declaraciones, como las declaraciones de clase o función.
Exportación predeterminada ( export default
)
Puede tener una exportación predeterminada por archivo. Cuando importa tiene que especificar un nombre e importar así:
import MyDefaultExport from "./MyFileWithADefaultExport";
Puedes ponerle el nombre que quieras.
Exportación con nombre ( export
)
Con exportaciones con nombre, puede tener múltiples exportaciones con nombre por archivo. Luego importe las exportaciones específicas que desee rodeadas de llaves:
// ex. importing multiple exports:
import { MyClass, MyOtherClass } from "./MyClass";
// ex. giving a named import a different name by using "as":
import { MyClass2 as MyClass2Alias } from "./MyClass2";
// use MyClass, MyOtherClass, and MyClass2Alias here
O es posible usar un valor predeterminado junto con importaciones con nombre en la misma declaración:
import MyDefaultExport, { MyClass, MyOtherClass} from "./MyClass";
Importar espacio de nombres
También es posible importar todo desde el archivo en un objeto:
import * as MyClasses from "./MyClass";
// use MyClasses.MyClass, MyClasses.MyOtherClass and MyClasses.default here
Notas
- La sintaxis favorece las exportaciones predeterminadas como un poco más concisas porque su caso de uso es más común ( vea la discusión aquí ).
Una exportación predeterminada es en realidad una exportación con nombre con el nombre, default
por lo que puede importarla con una importación con nombre:
import { default as MyDefaultExport } from "./MyFileWithADefaultExport";
const
hará que el identificador sea de solo lectura. Entonces, en el caso de valores primitivos, puede considerar que es inmutable. Tenga en cuenta que el valor en sí no es inmutable, por lo que los objetos, las matrices, etc. se pueden cambiar, pero no se pueden reasignar.