export default {
input: 'src/main.sidebar.ts',
output: {
sourcemap: false,
format: 'iife',
name: 'sidebar',
file: 'public/build/sidebar.json'
},
我有一个小巧的应用程序作为侧边栏。
上面的汇总配置将经过编译的输出原样传送到.json文件中。
我如何编写(请注意此处汇总的小节)一个“中间件”,它将获取输出并包装到一个简单的json对象中?
我需要在JSON有效负载中传输此JS代码。
答案 0 :(得分:0)
您可以使用一个插件,这些插件可以定义多个钩子,特别是generateBundle可以允许您检查生成的包。然后,使用this.emitFile插件上下文函数,您实际上可以输出JSON。这是一个例子
plugins: [
{
name: 'whatever',
generateBundle(outputOptions, bundle) {
const entry = Object.values(bundle).find((chunk) => chunk.isEntry);
this.emitFile({
type: 'asset',
fileName: 'entry.json',
source: JSON.stringify(entry.code)
});
}
}
]