【发布时间】:2017-05-18 05:24:11
【问题描述】:
我想在 Promise 中包装一个异步函数,以便它可以同步运行。我需要这样做,因为在继续执行我的程序之前,我需要检索依赖于异步函数的结果。
这是我的相关代码:
export abstract class OperationElement extends Sprite {
private imagePath;
abstract setPosition(mousePosition?, backgroundHeight?, backgroundWidth?) : void;
loadTexture(){
var _texture = PIXI.Texture.fromImage(this.imagePath);
this.texture = _texture;
console.log(this.height);
}
setImagePath(path : string){
this.imagePath = path;
}
}
运行异步的部分是var _texture = PIXI.Texture.fromImage(this.imagePath);这一行
纹理加载后,我可以得到纹理的高度。我需要纹理的高度才能继续执行我的程序。如何用一个 Promise 包装它以使其同步运行?
我在这里查看了其他一些问题,最相关的问题有一堆被否决且过时的答案,所以我回避了。
【问题讨论】:
-
fromImage返回什么? -
@Phil,
fromImage返回一个Texture对象,它只是 pixi.js 中内置的一个对象。如果您有兴趣,可以在这里阅读:pixijs.download/release/docs/PIXI.Texture.html。最重要的是,在继续执行我的程序之前,我需要返回Texture对象。 -
PIXI.Texture.fromImage已经同步返回Texture不是吗?你不需要承诺还是我错过了什么? -
@Hereblur,不,
PIXI.Texture.fromImage异步返回纹理
标签: javascript typescript promise pixi.js