node.js - 快速使用 webpack 开发服务器的目的是什么?

标签 node.js express webpack

我试图理解为什么人们想要 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/

相关文章:

javascript - Handlebars 嵌套变量/对象,无法到达变量

javascript - 分割字符串正则表达式

Node.js 请求库——将文本/xml 发布到正文?

node.js - 如何在nodejs v6.11.3中使用 "import"

reactjs - 使用 create-react-app 在 React 应用程序中获得更详细的输出

javascript - 这个功能可以被垃圾收集吗?

MySQL - 从 SELECT 插入 INSERT INTO,并在 Node Express 中传入值

javascript - Webpack代码分割: Does it do anything? 好像没有效果

javascript - Dotenv Webpack - 当我在运行时更改系统环境变量时,更改不会影响应用程序

node.js - Nodejitsu 说我的应用程序是 "not a Node app"- 是否有特殊的方法来编写用于 Nodejitsu 部署的 Node 应用程序?