我的node/mongo/express 应用程序有一个非常长的index.js 路由文件。这是结构。
app.js
/models
Schedule.js
Task.js
etc...
/routes
index.js
/public
/javascript
etc...
我想要这样的东西
app.js
/models
Schedule.js
Task.js
etc...
/routes
index.js
schedule.js
tasks.js
etc...
/public
/javascript
etc...
如何拆分我的index.js 文件?
例如,我尝试在我的 app.js 文件中执行类似的操作
var routes = require('./routes/index');
var tasks = require('./routes/tasks');
// later in the file
app.use('/', routes);
app.use('/tasks', tasks);
但是,它并没有像以前只有 index.js 时那样找到我的任务路线。这可能是因为我从routes/index.js中取出了所有以“/task”开头的路由并将它们放在routes/task.js中,但是为什么express无法识别这个新文件中的路由?
任何建议都会有所帮助,我和我的 friend 对整个meanjs的做事方式非常陌生,并且基本上将我们从各种教程中获得的内容拼凑在一起。现在我们迫切需要重构,因为 paths/index.js 太长而无法使用。我尽力做直观上有意义的事情,有人可以就如何分解我们的路线文件提供建议吗?
最佳答案
这个问题的答案在于如何导入(在此上下文中需要)路由器实例。这些文件中的每一个都应该使用路由器对象或类似的东西执行 module.exports
,其中路由可以安装在您创建的应用程序实例上。
例如,看看我在 GitHub here 上的一个项目中是如何做到这一点的(即在 yeoman 的帮助下) ,然后引用如何为每个路由导出路由器对象,如 this示例。
作为执行此操作的另一个示例,这是我一直在贡献的一个开源项目 here 。请注意,我们有一个稍微相似的方法 here ,然后看一下示例路由声明(带有相应的导出)here .
关于javascript - 如何在node/mean/express应用程序中拆分index.js文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30227167/