Javascript 承诺<;任何>;正在转换为ZoneAwarePromise

Javascript 承诺<;任何>;正在转换为ZoneAwarePromise,javascript,angular,typescript,promise,zone,Javascript,Angular,Typescript,Promise,Zone,我在项目中使用Angular5。我在api服务中实现了一些方法来回报承诺 method(): Promise<any> { return new Promise<any>((resolve,reject) => { this.http.get(url).subscribe((response) => { resolve(response); }, (error) => reject(erro

我在项目中使用Angular5。我在api服务中实现了一些方法来回报承诺

method(): Promise<any> {
    return new Promise<any>((resolve,reject) => {
        this.http.get(url).subscribe((response) => {
            resolve(response);
        }, (error) => reject(error));
    });
}
它从未达到警戒状态。所有操作都成功,代码为200

当我在带有
承诺的行暂停执行时,我看到我的承诺已转换为
ZoneAwarePromise

当我将嵌套调用链接到它们时,效果很好

为什么承诺会改变?如何获得承诺。一切正常?

用什么代替承诺?通过这样做:

forkJoin(...fetch.map(yourPromis(url)))

Angular包装了所有关于变化检测的承诺。你能否在stackblitz上创建一个简短的“不”工作示例?这似乎应该奏效。此外,您可以在rx管道上使用
.toPromise()
,而不是自己构建承诺。这对承诺有何影响?在使用Angular时,我是否必须实现自己的.all()?不,您可以使用
.all
和Angular您确定您的方法1和方法2也解决了可观察的问题吗?没有stackblitz很难调试,您发布的代码看起来应该可以工作
forkJoin(...fetch.map(yourPromis(url)))