express app和router的区别
var app = express();
var router = express.Router();
以上二者的区别是什么,什么时候用哪个最合适
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
var app = express();
var router = express.Router();
以上二者的区别是什么,什么时候用哪个最合适
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(1)
区别看下面的例子:
app.js
dogs.js
在
app.js
中调用express()
时,返回一个app
对象。app
对象可以看作创建了一个Express
应用程序。而当
express.Router()
被调用时,返回稍微不同的“迷你应用”。“迷你应用程序”背后的想法是,应用程序中的不同路线可能变得相当复杂,你可以从将该逻辑移动到单独的文件中获益。
在上面这个简单的例子中,
/dogs
路由的逻辑已经被移动到自己的文件中,所以它的GET
和POST
处理程序不会混乱app.js
。现在,你可以独立地处理对
/dog
的任何请求的逻辑,而不用担心它将如何影响猫/birds
。如果你具有与所有三条路由相关的逻辑(
Express
中称为中间件),则可以将其放在app.use(...)
调用上方的app.js
中。如果你有逻辑仅与其中一条路线(
/dog
)相关,那么你只将它放在该路由的文件中。以上回答,来源于Stack Overflow
Differences between express.Router and app.get?
共同学习,给赞更好~~~
至于什么时候使用,其实上面的例子已经解释了。
如果代码非常简单,完全可以
app.get('/',....)
,如果路由比较复杂,使用express.Router()
更合适。