steal
2.3.0
除了一系列外掛之外, StealJS還包含兩個主要元件:
steal
:一個可擴充的通用模組載入器。steal-tools
:用於建立、轉換和導出模組格式的實用程式。這是steal
儲存庫。有關tools
,請參閱 https://github.com/stealjs/steal-tools。
steal
steal
是獨一無二的,因為它可以載入以 ES6、AMD 和 CommonJS 格式定義的 JavaScript 模組(與大多數其他模組載入器不同,它們一次僅支援其中一種格式)。
在 JavaScript 中,「模組」一詞指的是獨立的、可重複使用的程式碼的小單元。它們是許多 JavaScript 設計模式的基礎,在 ES6 中可以如下所示:
export function hello ( ) {
console . log ( 'hello' ) ;
}
export function goodbye ( ) {
console . log ( 'goodbye' ) ;
}
或像 AMD 中:
define ( [ ] , function ( ) {
return {
hello : function ( ) {
console . log ( 'hello' ) ;
} ,
goodbye : function ( ) {
console . log ( 'goodbye' ) ;
}
} ;
} ) ;
或像這樣的 CommonJS:
function hello ( ) {
console . log ( 'hello' ) ;
}
function goodbye ( ) {
console . log ( 'goodbye' ) ;
}
module . exports = {
hello : hello ,
goodbye : goodbye
}
steal
支援所有這些格式,因此您可以在專案中混合和匹配模組:
// ES6
import { hello , goodbye } from "greetings" ;
// AMD
define ( [ "greetings" ] , function ( greetings ) { ... } ) ;
// CommonJS
var hello = require ( 'greetings' ) . hello ;
var goodbye = require ( 'greetings' ) . goodbye ;
此外,外掛程式可以載入您可能想到的任何模組類型,例如 Less 或 CSS。任何人都可以編寫一個用於steal
插件來擴展其核心模組載入功能。
steal
StealJS 組織維護一些流行的插件,這些插件擴展和增強了steal
(以及隨後的steal-tools
)的模組加載功能,例如:
例如,Less 外掛程式允許像 JavaScript 模組一樣載入 Less 檔案:
// ES6
import "style.less" ;
// AMD
define ( [ "style.less" ] , function ( ) { ... } ) ;
// CommonJS
require ( "style.less" ) ;
// steal
steal ( "style.less" )
想要為另一種格式建立插件?請參閱編寫插件。
有關 StealJS 的更多信息,請訪問 StealJS.com。
有關貢獻和開發的信息,請參閱 StealJS.com 上的貢獻指南。