Emberjs 2.11.0 奇怪的 RSVP 行为
Emberjs 2.11.0 strange RSVP behaviour
我查看了发行说明,但找不到任何提及 RSVP 工作方式更改的内容,但这是行不通的原因吗?
在路上,很简单的模型:
model() {
return RSVP.hash({
posts: get(this, 'store').findAll('post')
});
}
并在模板中:
{{#each posts as |post|}}
{{post.title}}
{{/each}}
Returns 没什么,但是如果我使用标准模型调用,例如
model() {
return get(this, 'store').findAll('post');
}
和
{{#each model as |post|}}
{{post.title}}
{{/each}}
它按预期工作。我在以前的 2.9.0 上做过很多很多应用程序,从来没有遇到过这个问题...
小迷糊!
RSVP.hash
returns 一个对象,其中每个键都包含来自承诺的已解析值。
在您的情况下,这意味着 model
将是 { posts: ... }
,因此您只是缺少 .posts
属性 链式调用:
路线:
model() {
return RSVP.hash({
posts: get(this, 'store').findAll('post')
});
}
模板:
{{#each model.posts as |post|}}
{{post.title}}
{{/each}}
如果你想使用这个模板
{{#each posts as |post|}}
{{post.title}}
{{/each}}
您可以在setupController
中设置posts
:
model() {
return RSVP.hash({
posts: get(this, 'store').findAll('post')
});
}
setupController(controller, model) {
controller.set('posts', model.posts);
}
我查看了发行说明,但找不到任何提及 RSVP 工作方式更改的内容,但这是行不通的原因吗?
在路上,很简单的模型:
model() {
return RSVP.hash({
posts: get(this, 'store').findAll('post')
});
}
并在模板中:
{{#each posts as |post|}}
{{post.title}}
{{/each}}
Returns 没什么,但是如果我使用标准模型调用,例如
model() {
return get(this, 'store').findAll('post');
}
和
{{#each model as |post|}}
{{post.title}}
{{/each}}
它按预期工作。我在以前的 2.9.0 上做过很多很多应用程序,从来没有遇到过这个问题...
小迷糊!
RSVP.hash
returns 一个对象,其中每个键都包含来自承诺的已解析值。
在您的情况下,这意味着 model
将是 { posts: ... }
,因此您只是缺少 .posts
属性 链式调用:
路线:
model() {
return RSVP.hash({
posts: get(this, 'store').findAll('post')
});
}
模板:
{{#each model.posts as |post|}}
{{post.title}}
{{/each}}
如果你想使用这个模板
{{#each posts as |post|}}
{{post.title}}
{{/each}}
您可以在setupController
中设置posts
:
model() {
return RSVP.hash({
posts: get(this, 'store').findAll('post')
});
}
setupController(controller, model) {
controller.set('posts', model.posts);
}