javascript - 使用 Rails 和 Backbone 上的混合面板实现复杂的跟踪

标签 javascript ruby-on-rails backbone.js tracking mixpanel

我的客户希望在他们的 Rails 3.2 应用程序上设置一个复杂的混合面板跟踪系统,该系统包含大量的 backbone.js 功能。

我想将混合面板功能抽象为某种模块(而不是将调用散布在现有代码库中)。

其中一个要求是混合面板调用在成功操作之前不会被触发,所以我认为我无法将混合面板调用附加到 DOM 元素。

我的另一个想法是在 javascript 中创建某种中介对象,用于订阅需要跟踪的各种主干事件。然而,我需要跟踪的事件中只有大约一半在主干中,这让我觉得我根本不认为我可以在 js 中使用 mixpanel。

也许是一个监听 Rails 模型的 lib 类?

有什么想法或建议吗?

谢谢!

最佳答案

大约六个月前,我们遇到了同样的问题,并决定构建一个开源 javascript 库,该库将抽象 Mixpanel 在我们使用的所有分析服务(包括 KISSmetrics、Google Analytics、Chartbeat 等)中的功能。

您可以在 http://segmentio.github.com/analytics.js 查看

结果是一个简单的 API,您可以在其中用一行代码调用 analytics.track() 或 analytics.identify(),并将数据发送到所有不同的提供商。

该库还有 analytics.trackLink() 和 analytics.trackForm() 等辅助函数,可以更轻松地跟踪出站点击和表单提交,这通常会导致页面在事件发送之前重新加载。这些功能引入了轻微的延迟,让事件发生。

关于javascript - 使用 Rails 和 Backbone 上的混合面板实现复杂的跟踪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12979424/

相关文章:

javascript - 在 javascript 中使用 [ ] 而不是 . 调用函数方法。运算符(operator)

javascript - jqModal 不工作

ruby-on-rails - 在 Rails 中使用 titleize 作为首字母缩略词

javascript - jquery_ujs 与 Rails 4 中的 Kaminari AJAX 冲突?

javascript - 将几个 json 文件合并为一个

backbone.js - 如何设置 Express 以与 Backbone 和 pushState 一起使用?

javascript - Backbone Marionette 和 RequireJS 模块混淆——模块似乎未定义

javascript - 对象没有被正确解释 JavaScript

javascript - 如何使用 Sequelize 建立关系

ruby-on-rails - 不要以 root 身份运行 Bundler - Elastic Beanstalk 上的 Rails6