gpt4 book ai didi

javascript - 在 Ember/Ember 数据中访问嵌套的 hasMany 关系

转载 作者:行者123 更新时间:2023-11-29 10:16:07 25 4
gpt4 key购买 nike

我正在尝试访问嵌套的 hasMany 关系,期望得到 promise 。不幸的是,我没有通过以下任何方式获得预期的结果:

// Tried the following
this.get('users.emails')
this.get('users.@each.emails')
this.get('users').get('emails')

// Trying to avoid this:
this.get('users').
then(function(users) {
var arr = Ember.A();

users.forEach(function(user, index){
arr.pushObject(user.get('emails'));
});

return array;
}).
then(function(emailArr){
// then do something
});

// Preferable
this.get('users.emails').then(function(emails){
// then do something
});

最佳答案

如果您定义模型时将 async 值设置为 true,如下所示:

users: DS.hasMany('user', {async: true})

然后通常调用 this.get('users') 将返回一个 promise 数组,并且在您实际开始使用它时可能不会解析。

嵌套的 gets 很棘手,尤其是异步模型的复杂性,所以我建议你这样做:

this.get('users').then(function(users) {
users.get('emails').then(function(emails) {
// do stuff with emails.
});
}

烦人吗?绝对地。大概有必要?是的。

关于javascript - 在 Ember/Ember 数据中访问嵌套的 hasMany 关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21100826/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com