Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将express router参数分离到不同的文件中_Javascript_Node.js_Express_Mean - Fatal编程技术网

Javascript 将express router参数分离到不同的文件中

Javascript 将express router参数分离到不同的文件中,javascript,node.js,express,mean,Javascript,Node.js,Express,Mean,我遇到了一点问题。我目前在my routing.js中获得了如下所示的路由。这是我当前拥有的my.param和my.route。通过在my routing.js中创建一个新的路由器实例,我已将路由与主应用程序分离,但我似乎无法分离我的参数。在另一个文件中创建一个新的路由器实例是无用的,因为要知道路由是如何特定于路由器的 router.param("courseId", function(req, res, next, courseId){ Course.findById(courseId, fu

我遇到了一点问题。我目前在my routing.js中获得了如下所示的路由。这是我当前拥有的my.param和my.route。通过在my routing.js中创建一个新的路由器实例,我已将路由与主应用程序分离,但我似乎无法分离我的参数。在另一个文件中创建一个新的路由器实例是无用的,因为要知道路由是如何特定于路由器的

router.param("courseId", function(req, res, next, courseId){
Course.findById(courseId, function(err, course) {
    if(err)
        return next(err);
    else if(!course) {
        res.json({success: false, message: "No course found"});
        return next(new Error("No course found"));
    }
    req.course = course;
    next();
});
}))

无论我如何将上面的代码分离到另一个文件,传递路由器实例都是我尝试过的事情,但大多数时候我都会遇到堆栈错误


感谢您的帮助

创建如下所示的params.js

module.exports = function(router) {
    router.param(....);
}
var router = express.Router();
require ('params.js')(router);
// your other routes below
router.get(...);
//etc.
像这样使用它

module.exports = function(router) {
    router.param(....);
}
var router = express.Router();
require ('params.js')(router);
// your other routes below
router.get(...);
//etc.

非常感谢。不知道不将require赋值给变量就可以使用require