3

Ember App Kit 中的目录结构规定所有控制器都位于“/app/controllers/”目录中;车把模板位于“/app/templates/”目录中,依此类推。

但是,我的团队目前正在开发一个 Ember 应用程序,其中功能区域(以及源文件)的数量不断增长,因此我们希望在这些目录下为我们的控制器、模板等创建子目录,而不是将所有内容分组在同一个目录。

我们通过以下方式组织我们的控制器和相应的车把模板,为一个功能区域完成了此操作:

/app/controllers/availability/availability.js
/app/templates/availability/availability.hbs

到目前为止,我们能够使这种方法发挥作用(即在这个嵌套目录结构中链接我们的控制器和模板)的唯一方法是创建以下路由:

this.route('availability.availabilty', {path: "/availability"});

这具有 Ember 为我们创建以下内容的副作用:

路由名称:availability.availability
路由:AvailabilityAvailability
Controller:AvailabilityAvailabilityController
模板:availability/availability
URL:#/availability

在生成的 Ember 控制器中重复了“可用性”一词,以呼应我们嵌套的可用性/可用性目录结构。

有谁知道在 Ember App Kit 的子目录中组织应用程序的更好方法?这肯定是具有大量源文件的应用程序的常见要求。

例如,我们希望 Ember 为我们创建以下内容:

路线名称:可用性。可用性
路由:可用性可用性
控制器:可用性可用性控制器
模板:可用性/可用性
URL:#/可用性

非常感谢

4

2 回答 2

1

从嵌套目录的文档http://iamstef.net/ember-app-kit/guides/naming-conventions.html看来,您只需进行一次调整即可完成您想做的事情。而不是将 availability.js 放在可用性子文件夹中,它应该是一个目录,然后所有子可用性控制器都放在该子文件夹中。

+-- app
+-- controllers
|   +-- availability
|   |   +-- edit.js
|   +-- availability.js

+-- app
+-- templates
|   +-- availability
|   |   +-- edit.hbs
|   +-- availability.hbs
于 2014-05-07T07:06:29.687 回答
0

请查看 ember-pods。 http://cball.me/organize-your-ember-app-with-pods/

这是一种以您想要的方式构建 ember 应用程序的方法。

于 2016-04-08T02:24:51.200 回答