' Ember生成资源'命令最终将this.route()添加到router.js

时间:2015-07-17 14:13:04

标签: javascript ember.js ember-cli ember-router

我正在阅读有关ember-cli的教程并遇到一些奇怪的行为:
要生成名为“朋友”的新资源。我正在运行一个ember-cli命令:

$ ember generate resource friends

生成器创建所有必需的文件,再加上app / router.js,它会添加以下内容:

...
Router.map(function() {
  this.route('friends');
});
...

我希望它能够创建(这在教程中提到):

  this.resource('friends', function(){ });

而不是

  this.route('friends');

所以我无法理解,我做错了什么?或者也许在ember-cli路由/资源生成器中发生了一些变化,因为本教程已经发布,现在这种行为正常了吗?

提前致谢,
格莱布。

1 个答案:

答案 0 :(得分:2)

在使用ember 1.7资源之前,由于它们能够重置命名空间和嵌套路由,因此当时无法嵌套路由。

由于ember 1.7+路由可以嵌套,您可以通过设置this.route('my-route', { path: '/mypath', resetNamespace: true } function() {});

来重置命名空间

您使用的blueprint最后一次修改于4月24日,以反映弃用和使用路线而非资源。

有关详细信息,请阅读以下article