如何在单个数组中定义多个路由
How to define multiple routes in single array
我有两个不同版本的 Api v1,v2.There 是两个版本的两个不同文件夹。我在 routes.js 中分别调用两个版本的所有路由文件,如下所示:
module.exports = function (server) {
const v1Path = "v1";
const v2Path = "v2";
//v1 files
require("./"+v1Path+"/routes/a")(server);
require("./"+v1Path+"/routes/b")(server);
require("./"+v1Path+"/routes/c")(server);
//v2 files
require("./"+v2Path+"/routes/a")(server);
require("./"+v2Path+"/routes/b")(server);
require("./"+v2Path+"/routes/c")(server);
require("./"+v2Path+"/routes/d")(server);
};
我在我的 server.js 中这样调用 routes.js 文件:
var routes = require('./routes')(server);
现在我的问题是,如何创建一个包含 v1 和 v2 的数组。并在一个循环中路由所有文件。请大家帮帮我。
你可以这样做:
module.exports = function (server) {
const versions = {
'v1': ['a', 'b', 'c'],
'v2': ['a', 'b', 'c', 'd']
};
Object.keys(versions).forEach(function(version){
versions[version].forEach(function(route){
require('./' + version + '/routes/' + route)(server);
});
});
};
我有两个不同版本的 Api v1,v2.There 是两个版本的两个不同文件夹。我在 routes.js 中分别调用两个版本的所有路由文件,如下所示:
module.exports = function (server) {
const v1Path = "v1";
const v2Path = "v2";
//v1 files
require("./"+v1Path+"/routes/a")(server);
require("./"+v1Path+"/routes/b")(server);
require("./"+v1Path+"/routes/c")(server);
//v2 files
require("./"+v2Path+"/routes/a")(server);
require("./"+v2Path+"/routes/b")(server);
require("./"+v2Path+"/routes/c")(server);
require("./"+v2Path+"/routes/d")(server);
};
我在我的 server.js 中这样调用 routes.js 文件:
var routes = require('./routes')(server);
现在我的问题是,如何创建一个包含 v1 和 v2 的数组。并在一个循环中路由所有文件。请大家帮帮我。
你可以这样做:
module.exports = function (server) {
const versions = {
'v1': ['a', 'b', 'c'],
'v2': ['a', 'b', 'c', 'd']
};
Object.keys(versions).forEach(function(version){
versions[version].forEach(function(route){
require('./' + version + '/routes/' + route)(server);
});
});
};