Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/54.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我怎样才能做一个好的';s javascript异步函数跟踪同步_Javascript_Ruby On Rails_Asynchronous_Gem_Ahoy - Fatal编程技术网

我怎样才能做一个好的';s javascript异步函数跟踪同步

我怎样才能做一个好的';s javascript异步函数跟踪同步,javascript,ruby-on-rails,asynchronous,gem,ahoy,Javascript,Ruby On Rails,Asynchronous,Gem,Ahoy,我有一些代码调用如下函数: function trackPDFSEClicks(){ ahoy.track("Viewed Job Spec", {title: "Viewed Software Engineer Job Spec"}); window.location.href = "/Software Engineer.pdf"; } 但是,由于此跟踪调用是异步的(有时在加载PDF之前不会完成),因此不会跟踪事件 我不一定要在控制器中处理此跟踪,因为

我有一些代码调用如下函数:

function trackPDFSEClicks(){
        ahoy.track("Viewed Job Spec", {title: "Viewed Software Engineer Job Spec"});
        window.location.href = "/Software Engineer.pdf";
    }
但是,由于此跟踪调用是异步的(有时在加载PDF之前不会完成),因此不会跟踪事件


我不一定要在控制器中处理此跟踪,因为如果可能的话,使用此方法会简单得多-因此有没有办法强制同步运行此ahoy.track调用?

在Apreading的洞察之后,我决定在控制器中为我的每个可下载文件创建一个操作链接-并使用了来自ahoy的rails API和rails
send_file
方法-这给了我期望的行为。

基于代码,我对此表示怀疑。愚蠢的,它不提供回调或承诺-感谢您的洞察力。