Webpack 使用网页包将单个模块导出为库
我有一个web应用程序,它将所有javascript捆绑到web包中 我想通过客户端api向用户公开方法的子集 我想我可以通过图书馆来做这件事Webpack 使用网页包将单个模块导出为库,webpack,Webpack,我有一个web应用程序,它将所有javascript捆绑到web包中 我想通过客户端api向用户公开方法的子集 我想我可以通过图书馆来做这件事 output: { path: BUILD_DIR, filename: 'bundle.js', publicPath: 'https://localhost:3000', library: 'myLibrary' } 这样,我可以在控制台中获取myLibary,但它是一个空对象。我不希望包中的每个方法都公开,但
output: {
path: BUILD_DIR,
filename: 'bundle.js',
publicPath: 'https://localhost:3000',
library: 'myLibrary'
}
这样,我可以在控制台中获取
myLibary
,但它是一个空对象。我不希望包中的每个方法都公开,但我希望特定的公开方法可用,但我不知道如何做到这一点。您需要在入口点导出您想要公开的内容。它的工作原理与常规导出一样,您可以只包含您想要的导出。例如,对于此入口点:
import module1 from './module';
import publicModule from './otherModule';
import privateModule from './privateModule';
function privateFun() {
console.log('not exposed');
}
export function publicFun() {
console.log('is exposed as myLibrary.public');
}
// Re-export, with possible rename
export { publicModule, module1 as firstModule };
只有导出的内容才会公开,如果要导出其他模块,请导入并重新导出它们。在这种情况下,您可以访问以下属性:
myLibrary.firstModule
myLibrary.publicFun
myLibrary.publicModule