javascript - 检查是否加载了 Mixpanel 库

标签 javascript mixpanel

我们的网站正在使用 mixpanel用于跟踪。

var mixPanelId = mixpanel.get_distinct_id();
$('#trial, #order').each(function () {
  $(this).append("<input type='hidden' value='"+mixPanelId+"' name='MixpanelId' />");
});

但是,如果未加载 mixpanel,则主对象没有 get_distinct_id。处理这种情况的最正确方法是什么?

到目前为止,我正在做一个普通的 js 属性检查(但我想知道 Mixpanel 是否有更正确的方法来做):

mixpanel.hasOwnProperty('get_distinct_id')

最佳答案

正确的方法是使用 init 属性,该属性将在库加载后触发。更多信息请阅读 How to prevent get_distinct_id & get_property from returning undefined

mixpanel.init('token-id', {'loaded':function() {
    var distinct_id = mixpanel.get_distinct_id();
}})

检查属性并不是处理情况的正确方法。您可以在加载库之前进行此检查。

mixpanel.hasOwnProperty('get_distinct_id')

关于javascript - 检查是否加载了 Mixpanel 库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32203420/

相关文章:

javascript - 在 Laravel PHP 中创建一个受 WordPress 启发的媒体库

ember.js - 与 EmberJS 混合面板

ios - Mixpanel 推送通知不适用于 iOS

javascript - 如何将 JavascriptSerializer 序列化的 DateTime 字符串转换为 Javascript Date 对象

javascript - Angularjs 资源多参数

javascript - ClearInterval 不清除 SetInterval

javascript - DHTMLX 网格中缺少行

javascript - 如何检查用户是否正在使用 disconnect.me/blocking mixpanel

ruby-on-rails-3 - 如何将 mixpanel-ruby 与 Devise 集成?