module - amd js
Importe los módulos commonJS, AMD y ES6 en tiempo de ejecución con sintaxis sincrónica (1)
He estado escribiendo mucho ES6 últimamente, usando import {variable} from ''ES6module''
sintaxis import {variable} from ''ES6module''
y compilando el código en el navegador con traceur-compiler . Empecé a buscar en systemjs ya que parecía que podría permitirme usar la misma sintaxis para importar los módulos AMD, commonJS y ES6.
Sin embargo, la lectura de la documentación comenzó a confundirme. Veo muchas llamadas asincrónicas como System.import(''path/to/module'').then(function(variable) { ... })
que no estoy acostumbrado para la importación de dependencias.
He leído Flujos de trabajo prácticos para módulos ES6 , que cubre muchos flujos de trabajo diferentes, ninguno de los cuales implica la importación de un módulo ES6 y un módulo AMD / commonjs en tiempo de ejecución. Estoy pensando algo como esto:
import {myObject} from ''my/es6/module'';
import {_} from ''lib/underscore'';
o si no eso, al menos:
import {myObject} from ''my/es6/module'';
var _ = require(''lib/underscore'');
¿Alguno de estos es posible con systemjs?
Este caso de uso es exactamente para lo que está diseñado SystemJS.
Puedes escribir:
import {myObject} from ''my/es6/module'';
import _ from ''lib/underscore'';
La razón es porque los módulos CommonJS, AMD y Global en SystemJS se tratan como si solo exportaran una propiedad default
, que corresponde a la sintaxis de importación predeterminada anterior.