Arangodb / Foxx如何在不同的文件中分割路由?

时间:2017-09-19 18:38:35

标签: arangodb foxx

如何将路由拆分为不同的文件?

这是我尝试过的,但没有奏效:

// file 'index.js' as main in manifest.json
const createRouter = require('@arangodb/foxx/router');  
const router = createRouter();
const entries = require('./routes/entries')
entries.init(router);
module.context.use("", router);

并且条目文件作为函数运行:

// file './routes/entries.js'
const db = require('@arangodb').db;
// [...] more const
module.exports = {
  init: function(router) {

    router.post('/entries', function(req, res) {
    // [...] post handle
    }
  }
}

1)如何修改js文件中的路由器并重用?

module.context.use(router)

2)任何想法如何处理文件夹中的所有js文件' routes'定义路由器,从而最小化路由文件的定义?

1 个答案:

答案 0 :(得分:1)

您可以使用功能router.use([path], middleware, [name]): Endpoint

module.context.use('/entries', require('./routes/entries'), 'entries');

有关详细信息,请查看文档here或最新的Foxx教程here,它们也使用子路由器。