我真的很困惑。我开始学习使用带有MEAN堆栈的node.js。之前我使用webpack和browserfy而没有真正了解它。
令我困惑的是:
嗯,Webpack和Browserfy(据我所知)也捆绑了js文件。怎样的逻辑"引擎盖下#34;工作,他们捆绑我编码的所有内容并将其发送给客户端(例如我的数据库登录)?
我读了这个Webpack vs webpack-dev-server vs webpack-dev-middleware vs webpack-hot-middleware vs etc,它告诉我webpack使用express引擎盖。那么也许express也可以使用计划.js服务器?
好吧,我可以永远这样下去。我有点困惑。
嗯,差异是什么以及在哪里以及这些应用如何协同工作?
答案 0 :(得分:2)
首先表达使用像http模块这样的node.js的核心API和模块。
express使用http模块在特定端口创建服务器,所以
app.listen(3000);
很简单就像这样
var http = require('http);
var server = http.createServer() ;
server.listen(3000) ;
server.on('request',function(req,res){
// here express will do all its magic
// and handle the request and response for you under the hood
})
第二件事是 webpack 和其他捆绑工具用于捆绑前端而不是后端的文件和资产,他们可以创建简单的服务器来监听文件中的更改以便为您提供其他功能如 +实时重新加载 +热模块更换 你也可以在后端使用 webpack 来使用babel-loader之类的东西或使用热模块更换功能
所以表达后端的作品 和webpack在前端使用它
您可以在每台服务器上创建不同的端口,并通过ajax API(如fetch)在它们之间进行通信 这就是它应该如何运作。