Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/361.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/60.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
Javascript 在Rails和主干上使用mixpanel实现复杂的跟踪_Javascript_Ruby On Rails_Backbone.js_Tracking_Mixpanel - Fatal编程技术网

Javascript 在Rails和主干上使用mixpanel实现复杂的跟踪

Javascript 在Rails和主干上使用mixpanel实现复杂的跟踪,javascript,ruby-on-rails,backbone.js,tracking,mixpanel,Javascript,Ruby On Rails,Backbone.js,Tracking,Mixpanel,我的客户希望在他们的Rails 3.2应用程序上建立一个复杂的mixpanel跟踪系统,该应用程序包含丰富的backbone.js功能 我想将mixpanel功能抽象为某种模块(而不是将调用分散在现有的代码库中) 其中一个要求是,在操作成功之前不会触发mixpanel调用,因此我认为无法将mixpanel调用附加到DOM元素 我的另一个想法是在javascript中创建某种中介对象,订阅需要跟踪的各种主干事件。然而,我需要跟踪的事件中只有大约一半在主干中,这让我觉得我根本无法在js中使用mixp

我的客户希望在他们的Rails 3.2应用程序上建立一个复杂的mixpanel跟踪系统,该应用程序包含丰富的backbone.js功能

我想将mixpanel功能抽象为某种模块(而不是将调用分散在现有的代码库中)

其中一个要求是,在操作成功之前不会触发mixpanel调用,因此我认为无法将mixpanel调用附加到DOM元素

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

也许是一个听rails模型的lib类

有什么想法或建议吗


谢谢

您当然可以使用or中的一个,对用户ID执行
identify()
,将其与用户ID关联起来


另一个选项是在客户端上通过AJAX执行操作,然后在
success
回调中触发mixpanel事件。如果您需要将它们发送到不同的页面,您可以在超时后设置
窗口.位置

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

你可以在

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


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

更多的细节会有所帮助。什么算是“成功的行动”?听起来你想要进行的所有跟踪都在前端,所以我不知道为什么rails会涉及到它。一个监听rails模型的ruby lib类到底在监听什么?基本上:你能给出你想要跟踪的具体例子吗?嗨,Peter,你能推荐一些教程/屏幕广播(除了你上面提到的)来设置rails+段,然后集成mixpanel来解释整个过程吗?有几种方法可以做到这一点(例如前端与后端),这是我第一次实施分析,所以我很难理解整个概念。顺便说一句,祝贺你创建了一家如此出色的公司。