gpt4 book ai didi

javascript - Ember 更新导致模板中的 promise 不等待解决

转载 作者:行者123 更新时间:2023-11-27 23:33:29 26 4
gpt4 key购买 nike

我正在进行 ember 1.12.1 -> 1.13.11 和 ember 数据 1.0.0-beta.19.1 -> 1.13.15 更新。我以前有一个模板:

{{a-component parent=model.parent}}

和一个组件

parentChanged: on('init', observer('parent', function() {
var parent = this.get('parent');
if (parent) {
parent.get('child').then(child => {
this.set('child', child);
});
}
}))

这以前有效,但更新后,childthen 调用后未定义。我不得不将其更改为

parentChanged: on('init', observer('parent', function() {
var parent = this.get('parent');
if (parent) {
parent.then(parent => {
parent.get('child').then(child => {
this.set('child', child);
});
});
}
}))

使其恢复到更新之前的状态。

有谁知道这是为什么吗?模板似乎在更新后停止解析 promise 。

最佳答案

交联https://github.com/emberjs/ember.js/issues/12732

经过一番挖掘和重现 http://emberjs.jsbin.com/ququdenari/edit?html,js,output ,我无法仅使用 promise 来获得 1.12.1 中的初始工作案例。这让我相信这可能是 ember-data 建立关系 promise 的方式,而且由于我从 1.0.0-beta.19.1 更新到 1.13.15,所以任何重大更改都是公平的。

总之,我更好地理解了我的目标问题。

编辑:

我做了一个插件 ember-resolve-promise-helper帮助从您的代码中抽象出这个问题。

关于javascript - Ember 更新导致模板中的 promise 不等待解决,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34338167/

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