Javascript 如何抓住';ga未定义';在您的开发环境中

Javascript 如何抓住';ga未定义';在您的开发环境中,javascript,google-analytics,google-analytics-api,Javascript,Google Analytics,Google Analytics Api,因此,我有自己的开发环境,每次运行项目时,控制台中都会出现javascript错误: ga未定义 当然,我不在正确的领域,所以Google Analytics认为这是一个问题,我对此没有意见,但它不允许我的其余Javascript运行,因此我有modals和其他基于JS的功能停止工作 我的想法是我可以编写一个包装器方法并检查ga是否未定义。但在我这么做之前,我只是想看看是否有更好的解决方案,或者对我的设置有不同的思考方式 干杯 Devin我用重新定义ga的方法解决了我的问题,而不是试图捕捉错误。

因此,我有自己的开发环境,每次运行项目时,控制台中都会出现javascript错误:

ga未定义

当然,我不在正确的领域,所以Google Analytics认为这是一个问题,我对此没有意见,但它不允许我的其余Javascript运行,因此我有modals和其他基于JS的功能停止工作

我的想法是我可以编写一个包装器方法并检查ga是否未定义。但在我这么做之前,我只是想看看是否有更好的解决方案,或者对我的设置有不同的思考方式

干杯


Devin

我用重新定义
ga
的方法解决了我的问题,而不是试图捕捉错误。在后端,如果主机url包含我们的域,我们有逻辑只包含Google Analytics脚本标记,因此当它是localhost或dev url时,脚本不包含在内

因此,作为一个解决方案,我从这个问题()中得到了答案,并在后端实现了类似的解决方案,并在不是我们的生产网站域时排除了以下代码

ga('create','UA-******-1','mywebsite.com')

结果,
ga
仍然被定义,但没有将数据发送到我们的谷歌分析账户

祝你好运


Devin

我不明白为什么这个符号一开始就没有定义。但是,在使用它之前测试它几乎是你能做的所有事情。你如何/在哪里包括标记?看,这可能会对你有所帮助。我已经在代码库中工作过,可以做到这一点;它似乎工作得很好。有一些
analytics.js
文件提供了一个存根,如果
ga
没有实际加载到页面上。哦,你是说如果ga没有定义,我会有一个备份ga对象来接管?