在Meteor App中控制器应该放置的位置



我正在使用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文件夹的子文件夹。

这当然是个人偏好,但对我的肌肉记忆很有效。我有兴趣看看其他人是如何组织他们的项目的。

最新更新