我在问一些太奇怪的问题,但我不确定
我正在尝试使用OOP 在Typescript中生成.done((函数
我的代码看起来像:
// Calling this callback out of Class map/terrain
terrain.done(() =>
{
// Do something when terrain is Done
});
另一个代码是加载地形,现在我有了想要运行这个回调的函数whit。
private loadTiledmap():void
{
.... //loadTiledmap is called when all resources are loaded
this.done; // Trigger the callback
}
public done(callback: () => void ): void
{
callback();
}
this.done和terrain.done(((都会调用回调,但我不知道如何在代码的其他地方触发terrain.don((。感谢您的所有帮助和提示
听起来像是希望done(callback)
注册回调,然后希望loadTiledmap
在回调完成后调用回调?
在这种情况下,您只需要将函数保存在类实例上,然后运行回调。
class MyClass {
private doneCallback: (() => void) | undefined
// Save the callback function
public done(callback: () => void ): void
{
this.doneCallback = callback;
}
private loadTiledmap():void
{
// ... loadTiledmap is called when all resources are loaded
this.doneCallback?.(); // Trigger the callback
}
}
游乐场