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