我正在使用iron:router创建一个Meteor应用程序。根据文档,我可以创建控制器。
BaseController = RouteController.extend({
layoutTemplate: 'mainLayout'
});
路由的配置文件现在放在/ lib文件夹中。我是否还应将控制器放在同一文件夹内或更好地放在客户端内?
据我所知,该集合的集合初始化和方法应放在lib文件夹中。
有人可以解释我的流星应用程序结构应该是什么样子吗?我已经阅读了Meteor文档中的最佳实践,但只有一般提示。
答案 0 :(得分:1)
您应将控制器放在/lib/
文件夹中。这使它可供客户端和服务器使用。
基本上,您可以在Meteor中创建自己的文件结构。只需遵循某种规则即使事情失控,也不难移动/重命名文件。我没有发现任何人推荐任何“硬”规则。
在我的情况下,我将所有路由器文件放在/lib/router/
中,而控制器将位于/lib/router/controllers/
中。因此,HomeController
会放在/lib/router/controllers/home.js
中。
答案 1 :(得分:1)
我不确定这是否有“最佳实践”。我个人喜欢按目标分隔我的代码。所以我有一个
/client
/server
/lib
/public
设置。只应在服务器上运行的东西(例如你的DAL)进入服务器文件夹,然后通过其功能分成子文件夹。运行客户端和服务器端的东西(例如路由器)进入lib文件夹(好处是Meteor查找此文件夹并在客户端/服务器文件夹之前加载)。 CSS等静态文件位于公用文件夹中。在上面的示例中,控制器是lib文件夹的子文件夹。
这当然是个人偏好,但对我的肌肉记忆效果很好。将有兴趣了解其他人如何构建他们的项目。