在将webpack版本写入磁盘之前将其输出捕获为字符串,可以使用webpack的插件机制来实现。以下是一种可能的解决方案:
webpack
和webpack-dev-middleware
插件:npm install webpack webpack-dev-middleware --save-dev
webpack-dev-middleware
插件:const webpack = require('webpack');
const webpackConfig = require('./webpack.config.js');
const webpackDevMiddleware = require('webpack-dev-middleware');
const compiler = webpack(webpackConfig);
// 添加webpack-dev-middleware插件
app.use(webpackDevMiddleware(compiler, {
publicPath: webpackConfig.output.publicPath
}));
webpack-dev-middleware
的fileSystem
属性来捕获webpack输出的内容:const fs = require('fs');
const path = require('path');
const webpack = require('webpack');
const webpackConfig = require('./webpack.config.js');
const webpackDevMiddleware = require('webpack-dev-middleware');
const compiler = webpack(webpackConfig);
// 添加webpack-dev-middleware插件
const middleware = webpackDevMiddleware(compiler, {
publicPath: webpackConfig.output.publicPath
});
// 在webpack编译完成后,将输出内容捕获为字符串
middleware.waitUntilValid(() => {
const outputPath = path.join(webpackConfig.output.path, webpackConfig.output.filename);
const outputContent = fs.readFileSync(outputPath, 'utf-8');
console.log(outputContent);
});
通过以上步骤,你可以在将webpack版本写入磁盘之前,将其输出捕获为字符串。这样你就可以对输出内容进行进一步的处理或者保存到磁盘中。
请注意,以上代码示例中的webpack.config.js
是你的webpack配置文件,你需要根据自己的项目进行相应的配置。另外,这只是一种实现方式,你也可以根据自己的需求选择其他适合的方法。
没有搜到相关的沙龙
领取专属 10元无门槛券
手把手带您无忧上云