React 路由器将查询附加到 URL
React router appending query to URL
React 路由器似乎在我的路由末尾附加了一个查询。该应用程序由节点服务器 运行 express 提供服务。我正在使用最新版本的 react-router“1.0.0-rc1”
示例:
http://localhost:8080/#/users?_k=8wsy62
两个问题
1) 为什么会这样?
2) 如何阻止它向 url 附加查询?
这是我目前的代码:
var React = require('react');
var ReactRouter = require('react-router');
var Router = ReactRouter.Router;
var Route = ReactRouter.Route;
var Link = ReactRouter.Link;
var IndexRoute = ReactRouter.IndexRoute;
var App = React.createClass({
render: function() {
return (
<div className="app">
<h1>App</h1>
<Link to="/users">Users</Link>
{this.props.children}
</div>
);
}
});
var Home = React.createClass({
render: function() {
return (
<div className="home">
<h2>Home</h2>
</div>
);
}
});
var Users = React.createClass({
render: function() {
return (
<div className="users">
<h2>Users</h2>
</div>
);
}
});
React.render((
<Router>
<Route path="/" component={App}>
<IndexRoute component={Home} />
<Route path="users" component={Users} />
</Route>
</Router>
), document.body);
摘自此link:http://rackt.github.io/history/stable/HashHistoryCaveats.html
HTML5 gives us the pushState method and the popstate event, but in
older browsers the only thing we have is the URL. So, when using hash
history, you'll see an extra item in your query string that looks
something like _k=123abc. This is a key that history uses to look up
persistent state data in window.sessionStorage between page loads.
如果您不喜欢,您可以同时查看上面的 link 和这个,了解如何阻止它:https://github.com/rackt/react-router/issues/1952#issuecomment-140401701
React 路由器似乎在我的路由末尾附加了一个查询。该应用程序由节点服务器 运行 express 提供服务。我正在使用最新版本的 react-router“1.0.0-rc1”
示例:
http://localhost:8080/#/users?_k=8wsy62
两个问题
1) 为什么会这样?
2) 如何阻止它向 url 附加查询?
这是我目前的代码:
var React = require('react');
var ReactRouter = require('react-router');
var Router = ReactRouter.Router;
var Route = ReactRouter.Route;
var Link = ReactRouter.Link;
var IndexRoute = ReactRouter.IndexRoute;
var App = React.createClass({
render: function() {
return (
<div className="app">
<h1>App</h1>
<Link to="/users">Users</Link>
{this.props.children}
</div>
);
}
});
var Home = React.createClass({
render: function() {
return (
<div className="home">
<h2>Home</h2>
</div>
);
}
});
var Users = React.createClass({
render: function() {
return (
<div className="users">
<h2>Users</h2>
</div>
);
}
});
React.render((
<Router>
<Route path="/" component={App}>
<IndexRoute component={Home} />
<Route path="users" component={Users} />
</Route>
</Router>
), document.body);
摘自此link:http://rackt.github.io/history/stable/HashHistoryCaveats.html
HTML5 gives us the pushState method and the popstate event, but in older browsers the only thing we have is the URL. So, when using hash history, you'll see an extra item in your query string that looks something like _k=123abc. This is a key that history uses to look up persistent state data in window.sessionStorage between page loads.
如果您不喜欢,您可以同时查看上面的 link 和这个,了解如何阻止它:https://github.com/rackt/react-router/issues/1952#issuecomment-140401701