我一直在阅读Ember CLI 101
以了解资源/路线的区别,但我无法理解下面的情况:
我使用ember-cli创建了一个新项目并运行:
ember g resource testme --pod
和
ember g route testme/testresource --pod
。
然后,我添加了testme/template.hbs
更改为:
This is test me1.
{{outlet}}
并将testme/testresource/template.hbs
更改为
This is the test resource .
{{outlet}}
路线看起来像
this.resource('testme', function() {
this.resource('testresource', function() {});
});
为什么导航到
的情况http://localhost:4200/testme/testresource
仅提供
This is test me1.
而不是
This is test me1. This is the test resource .
如果我将testresource
更改为route
,我会得到两个句子。如果testresource
是resource
,为什么我不能同时获得这两项?如果第二个模板没有渲染,那么它的重点是什么?
作为参考,我的依赖关系如下:
"jquery": "^1.11.1",
"ember": "1.10.0",
"ember-data": "1.0.0-beta.15",
答案 0 :(得分:4)
资源有自己的命名空间,资源下的路由在它们上面的资源下面命名空间。
当Ember解析testresource
模板时,它遵循此模式。如果它是路由器中的resource
,它将查找名为testresource
的模板。如果它是路由器中的route
,则会查找resource/route
,即testme/testresource
。