[英]ember add an promise to a rsvp promise because of action
我有一条路线可以返回几个模型
FriendEnemyRouter
model: function() {
return Ember.RSVP.hash({
friends: this.store.find('People', ...),
enemies: this.store.find('People', ..),
在同一台路由器上有一个操作(在路由器上,因为它确实存储了“事物”)
actions: {
findMoreFriends: function(param, param) {
var newFriends = this.store.find('People', ..);
var newPromise = this.controller.get('model'); //OK. Inspecting sees above friends and enemies. What type is it?
model.set("newFriends": newPromise); // throws an exception
//-- or --
model.newFriends = newPromise; // no exception but observer (computer property) on the controller is not fired.
}
}
最终,我希望控制器上的此计算属性能够触发
FriendEnemyController
computedNewFriends: function() {
....
).property('newFriends');
向rsvp承诺添加新的承诺的过程是什么...甚至不确定对象类型...
model.set("newFriends": newPromise); // throws an exception
model.newFriends = newPromise; // no exception but clearly doesnt notify observer/property
RSVP.hash
解析POJO
,这意味着它不会扩展Ember.Object
。 因此, set
和get
不在对象本身上定义。 您可以在不是Ember Objects的对象上使用Ember.set
和Ember.get
,它将触发计算的属性。
Ember.set(model, 'newFriends', newPromise)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.