Además de una colección de complementos, StealJS se compone de dos componentes principales:
steal
: un cargador de módulos universal y extensible.steal-tools
: utilidades para crear, transformar y exportar formatos de módulos. Este es el repositorio steal
. Para conocer las tools
, consulte https://github.com/stealjs/steal-tools.
steal
steal
es único porque puede cargar módulos JavaScript definidos en formatos ES6, AMD y CommonJS (a diferencia de la mayoría de los otros cargadores de módulos, que solo admiten uno de estos formatos a la vez).
En JavaScript, la palabra "módulos" se refiere a pequeñas unidades de código reutilizable e independiente. Son la base de muchos patrones de diseño de JavaScript y pueden verse así en ES6:
export function hello ( ) {
console . log ( 'hello' ) ;
}
export function goodbye ( ) {
console . log ( 'goodbye' ) ;
}
O así en AMD:
define ( [ ] , function ( ) {
return {
hello : function ( ) {
console . log ( 'hello' ) ;
} ,
goodbye : function ( ) {
console . log ( 'goodbye' ) ;
}
} ;
} ) ;
O como este CommonJS:
function hello ( ) {
console . log ( 'hello' ) ;
}
function goodbye ( ) {
console . log ( 'goodbye' ) ;
}
module . exports = {
hello : hello ,
goodbye : goodbye
}
Todos estos formatos son compatibles con steal
, por lo que puedes mezclar y combinar módulos en tu proyecto:
// ES6
import { hello , goodbye } from "greetings" ;
// AMD
define ( [ "greetings" ] , function ( greetings ) { ... } ) ;
// CommonJS
var hello = require ( 'greetings' ) . hello ;
var goodbye = require ( 'greetings' ) . goodbye ;
Además, los complementos permiten cargar CUALQUIER tipo de módulo que se le ocurra, como Less o CSS. Cualquiera puede escribir un complemento para steal
para ampliar su funcionalidad principal de carga de módulos.
steal
con complementos La organización StealJS mantiene complementos populares que amplían y mejoran las capacidades de carga de módulos de steal
(y, posteriormente, steal-tools
), tales como:
Por ejemplo, el complemento Less permite cargar archivos Less de manera similar a los módulos JavaScript:
// ES6
import "style.less" ;
// AMD
define ( [ "style.less" ] , function ( ) { ... } ) ;
// CommonJS
require ( "style.less" ) ;
// steal
steal ( "style.less" )
¿Busca crear un complemento para otro formato? Consulte Complementos de escritura.
Para obtener más información sobre StealJS, visite StealJS.com.
Para obtener información sobre cómo contribuir y desarrollar, consulte la Guía de contribución en StealJS.com.