代码拉取完成,页面将自动刷新
const Koa = require('koa');
const path = require('path');
const webpack = require('webpack');
const koaWebpack = require('koa-webpack');
const app = new Koa();
const clientConfig = require('./build/webpack.client.config');
// koa-webpack 自动添加
clientConfig.entry.app = [clientConfig.entry.app];
clientConfig.output.filename = '[name].js';
clientConfig.plugins.push(new webpack.NoEmitOnErrorsPlugin());
const clientCompiler = webpack(clientConfig);
function ready(options) {
return koaWebpack(options);
}
let koaWebpackOptions = {
compiler: clientCompiler,
devMiddleware: {}
};
ready(koaWebpackOptions).then(koaWebpackMiddleware => {
app.use(koaWebpackMiddleware);
app.use(async (ctx, next) => {
if ((ctx.request.path = '/')) {
const filename = path.resolve(clientConfig.output.path, 'index.html');
ctx.response.type = 'html';
ctx.response.body = await koaWebpackMiddleware.devMiddleware.fileSystem.createReadStream(filename);
} else {
await next();
}
});
app.listen(3000, () => {
console.log('server is started on 3000 port ', 'http://127.0.0.1:3000');
});
});
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。