在被标记为重复之前:我整天都在阅读有关此的帖子,所以我知道SO上有很多类似的问题,但到目前为止,我没有看到任何涉及我需要了解的细节。
话虽如此,没有关于该过程如何工作的良好评论示例。有人可以用一个注释良好的示例来回答以下问题,以便我最终理解这种能力吗?
我有一个函数,我想在一个文件中调用它,但我需要确保在调用它之前另一个文件中的另一个事件已经发生。这些文件没有连接(一个是启动应用程序的 angular 2 TypeScript 文件,另一个是管理跳房子之旅的 JS 文件)。我知道我需要使用全局变量,我相信我读过的最佳解决方案将涉及使用二传手和getter。我看到的所有例子似乎都假设它只是直观的,而省略了我了解它是如何工作的部分。也许这是直观的,但我还没有实现飞跃。
TypeScript 文件中的全局变量:
global_variable = false;
我想根据侦听器在 JavaScript 文件中调用的函数:
function call_if_other_function_finishes() {
if (global_variable === true) { // I have the global already created
// run hopscotch tour
}
} // how do I turn this into a listener?
我需要首先在 TypeScript 文件中完成的函数:
function someFunction() {
// run its code
GlobalFile.global_variable = true; // Should trigger the listener.
}
提前感谢!!
一种解决方案是像在示例中一样定义函数,然后在需要时运行它:
function someFunction() {
// run its code
call_if_other_function_finishes() // it's globally defined anyway
}