我试图理解为什么人们想要 webpack 服务器用于 webpack 捆绑和服务客户端代码并为 api 提供服务的应用程序。
例如。我想你会在一个端口上运行express,而在不同的端口上运行webpack,并且你会将所有对webpack的请求代理到后面的express后端。
但是,我继续看到这种用法:
const app = express();
const compiler = webpack(config);
app.use(express.static(__dirname + '/dist'));
app.use(webpackMiddleware(compiler);
app.use(webpackHotMiddleware(compiler)); // And this line
快速使用此服务器的原因是什么?
最佳答案
Webpack 不适用于服务器,它是一种将 MDN 模块写入浏览器的方法。在您的代码中,webpack 正在“锁定”表达,并将处理它的一些请求。这称为中间件,是 Node.js 中大多数服务器库的支柱(Meteor 除外)。在此代码中,只有一个(面向前向的)服务器,尽管 Express 喜欢以另一种方式进行划分。让我们浏览一下代码中的重要行:
const app = express();
const compiler = webpack(config);
app.use(express.static(__dirname + '/dist'));
上面的行在/dist 中查找并查看是否有要提供给浏览器的文件。按照正常情况,该中间件通常在处理任何动态页面之前。
app.use(webpackMiddleware(compiler);
app.use(webpackHotMiddleware(compiler)); // And this line
如果静态服务器无法处理此请求,则为他们提供 webpack 模板
希望这对您有帮助,
布伦丹·麦奎尔
关于node.js - 快速使用 webpack 开发服务器的目的是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37626042/