我需要编写一个可在全局窗口上使用的模块.
我正在使用es6来创建模块,我定义的每个类都有自己的文件.
我正在使用webpack来babelify并捆绑这些类.
我的模块的入口点也是包含要公开的全局的文件.
我已经尝试过各种方法来实现这个可能性,包括:
我试过的代码示例:
我想得到:window.MyMod
// mymod.js
export class MyMod {
constructor(aaa) {
this.aaa = aaa;
}
toString() {
return this.aaa;
}
}
Run Code Online (Sandbox Code Playgroud)
// webpack.config
var entries = [
'./src/mymod.js'
];
module.exports = {
...,
module: {
loaders: [
{
test: require.resolve('./src/mymod.js'),
loader: 'expose?MyMod'
},
{
test: /\.js$/,
exclude: /node_modules/,
loader: 'babel-loader',
query: {
presets: ['es2015']
}
}
]
}
Run Code Online (Sandbox Code Playgroud)
这只会让我在包含MyMod作为构造函数的窗口上找到一个MyMod对象.
任何帮助将不胜感激.