我可以通过react-router获得一些正确设置历史库的帮助吗,某处的文档说我必须使用mixin来使用来自remtrouter的历史记录但是其他地方告诉我必须导入历史库才能完成任务。这太令人困惑了
答案 0 :(得分:3)
如果要更改react-router的默认设置,则只需要导入历史库,这仅适用于设置路由器的情况。否则,您不需要。
无论如何,要使用history.pushState,您需要使用mixin。如果使用React Router 1.0.0-rc3,你可以这样做(一个简单的例子,但应该得到重点):
var React = require('react');
var History = require('react-router').History;
var Link = React.createClass({
mixins: [ History ],
_handleClick: function(){
this.history.pushState(null, "/example-route");
},
render: function() {
return (
<div onClick={this._handleClick}>
Link
</div>
);
},
});
module.exports = Link;