JavaScript-如何在中使用setter和getter创建侦听器
在这被标记为重复之前:我已经读了一整天关于这一点的帖子,因此我知道有很多类似的问题,但到目前为止,我还没有看到一个涉及到我需要了解的细节 话虽如此,关于这个过程是如何工作的,还没有好的例子。有人能用一个评论良好的例子回答下面的问题,这样我才能最终理解这个能力吗 我有一个函数,我想在一个文件中调用,但我需要确保在调用它之前,另一个文件中的另一个事件已经发生。这些文件没有连接(一个是启动应用程序的angular 2 TypeScript文件,另一个是管理跳房子巡演的JS文件)。我知道我需要使用一个全局变量,我相信我读过的最好的解决方案是使用setter和getter我所看到的所有例子似乎都认为这是直观的,而忽略了我理解它是如何工作的部分。也许这是直觉,但我还没有做到这一点 TypeScript文件中的全局变量:JavaScript-如何在中使用setter和getter创建侦听器,javascript,listener,getter-setter,Javascript,Listener,Getter Setter,在这被标记为重复之前:我已经读了一整天关于这一点的帖子,因此我知道有很多类似的问题,但到目前为止,我还没有看到一个涉及到我需要了解的细节 话虽如此,关于这个过程是如何工作的,还没有好的例子。有人能用一个评论良好的例子回答下面的问题,这样我才能最终理解这个能力吗 我有一个函数,我想在一个文件中调用,但我需要确保在调用它之前,另一个文件中的另一个事件已经发生。这些文件没有连接(一个是启动应用程序的angular 2 TypeScript文件,另一个是管理跳房子巡演的JS文件)。我知道我需要使用一个全
global_variable = false;
function someFunction() {
// run its code
GlobalFile.global_variable = true; // Should trigger the listener.
}
我想基于侦听器在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文件中首先完成的函数:
global_variable = false;
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
}
使用承诺…不,不要使用让一切都变得混乱的setter/getter。只需将全局变量设置为您可以调用的回调函数。我理解并感谢您给我其他建议。但是不管我最终是否使用setter/getter方法,我仍然想理解它。请注意,setter/getter只处理属性,而不处理变量