我有一个Meteor应用程序,所有UI组件都是使用React构建的。我使用FlowRouter进行路由。
现在我想用Yandex.Metrika服务添加分析。
我找到了React的这个包:https://github.com/narkq/react-yandex-metrika
但是我必须如何使用它?出于什么原因,我需要此示例中的<YM />
组件?
import {Initializer as YM} from 'react-yandex-metrika';
// Use the initializer to add the script to your page somewhere.
var MyComponent = React.createClass({
render: function() {
return (
<div>
// SNIP
<YM />
// SNIP
</div>
);
}
});
我应该在哪里初始化跟踪器对象?我读到了这个:
// This is supposed to be executed only in browser and only once.
// Because of that, the most sensible place for this code is right after you javascript bundle.
ym.init([987654321]);
但是什么是javascript包,我应该在哪里放置im.init(id)
代码?
实际上我所需要的只是拥有向Metrika发送数据的功能,例如hit
(pageview
模拟rom ga),reachGoal
等等。
谢谢你的回答!
答案 0 :(得分:1)
为什么我需要这个例子中的组件?
你需要它来加载metrika的主要代码
metrika如何运作:
webmaster(you)将小块的js代码(loader)插入到所有页面。这段代码用主代码附加异步脚本(它比加载器大一点)并创建metrika对象的实例(&#39; counter&#39;) - new Ya.Metrika(...params)
。实例将在名为yaCounterXXXXX
的全局变量中提供,其中XXXXX
是您的计数器ID。
因此,<YM />
组件是前一段中的加载器。
实际上我所需要的只是拥有发送数据的功能 Metrika,如hit(pageview analog rom ga),到达Goal等等。
在自述文件的底部有关于此的文档。但我没有看到针对这些方法的计数器ID过滤。也许我做一个pr来添加这个功能。在任何情况下,您都可以使用全局变量yaCounterXXXXX
,例如yaCounterXXXXX.hit(url, params)
或yaCounterXXXXX.reachGoal(goalId, params)
我希望我帮助过你。