Rya*_*edy 9 reactjs react-router
我想在我的单页应用程序上安装分析处理程序,并希望捕获主路径下的每个路径更改.我认识到ReactRouter提供了一个onEnter路由事件; 但是,这需要我在每个路由上单独安装处理程序.我可以创建一个自动onEnter填充的Route子类,但是我无法覆盖onEnter并仍然保留分析跟踪处理程序.
在给定的根路由中监听任何变化的最佳方法是什么?
您可以使用react-router willTransitionTo静态函数来检测路由更改并transition.path在ga()函数调用中发出,如下所示:
var App = React.createClass({
mixins: [Router.State],
statics: {
willTransitionTo: function(transition, params, query, props) {
ga('send', 'pageview', {'page': transition.path});
}
},
render: function() {
return (
<div>
<RouteHandler />
</div>
);
}
});
Run Code Online (Sandbox Code Playgroud)
在这个答案中可以看到一个更完整的例子.
| 归档时间: |
|
| 查看次数: |
11520 次 |
| 最近记录: |