如果我...
-
定义了两个资源:
this.resource('activity'); this.resource('notes');
-
并定义了一个模型:
App.Note = DS.Model.extend({ });
如何指定每个端点返回应存储为 Notes 的资源列表,而不是将一组资源存储为 Activity 而另一组存储为 Notes?
您可以在
路由的model
钩中指定此项。您需要执行以下操作:
App.NotesRoute = Ember.Route.extend({
model: function() {
return this.store.findAll('note');
}
});
App.ActivityRoute = Ember.Route.extend({
model: function() {
return this.store.findAll('note');
}
});
Ember 使用以下任一方式共享数据:
- 余烬存储,即服务
- 使用控制器相互通信(通信数据)
见图
+----------------------------------------------------------------+
| |
| |
| |
| |
| Ember Route Ember Route |
| + + |
| | | |
| v v |
| Ember Controller <-----------> Ember Controller |
| + + |
| | | |
| v v |
| Ember Component(s) Ember Component(s) |
| |
| |
| |
+----------------------------------------------------------------+