gpt4 book ai didi

node.js - 如何在express框架中将路由与应用程序文件分开

转载 作者:太空宇宙 更新时间:2023-11-03 23:24:15 25 4
gpt4 key购买 nike

例如:

server.js 文件

var express = require('express'),
app = express(),
port = 3000,
routes = require('./app/routes/apiRoutes');

routes(app);

app.listen(port);

routes.js 文件

'use strict';

module.exports = function( app ) {

var api= require('../controllers/apiController');

app.route('/get').get(api.get);

};

apiController.js 文件

 'use strict';

exports.get = function(req, res) {

// console.log( req.app ); // access it but it didn't work ?

// here want to access app to set cookie and changed cookie ?

};
<小时/>

如果有其他方法请帮助我,谢谢:)

最佳答案

如果我正确理解你的问题,通过路线你可以做这样的事情:

routes.js文件中:

var router = require('express').Router()

router.get('/home', function(req, res, next) {
res.render('index')
})

module.exports = router

server.js文件中:

var mainRoutes = require('./routes.js')
app.use(mainRoutes)

(在我看来)使用另一个文件中的 Controller 的最佳方法是使用 exports.functionName 表示法:

someController.js 文件中:

exports.homePage = function(req, res) {
res.render('index')
}

因此,您的路由器将如下所示:

var router = require('express').Router()
var someController = require('./someController.js')

router.get('/home', someController.homePage)

module.exports = router

关于node.js - 如何在express框架中将路由与应用程序文件分开,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46293496/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com