为什么我没有使用hashHistory插件,url有散列后缀

时间:2016-09-29 17:46:52

标签: javascript reactjs webpack

index.js (前一)

import React from 'react'
import { render } from 'react-dom'
import { Router, Route } from 'react-router'
import App from './modules/App'

render((
  <Router history={hashHistory}>
    <Route path="/" component={App}/>
    <Route path="/repos" component={Repos}/>
    <Route path="/about" component={About}/>
  </Router>
), document.getElementById('app'))

App.js

import React from 'react'

export default React.createClass({
  render() {
    return (
        <div>
            <h1>React Router Tutorial</h1>
        </div>
    )
  }
})

网址

http://localhost:8080/#/?_k=8cu99t

当我删除history={hashHistory}时,它在url后面也有哈希后缀。 我不知道为什么,关于hashHistory的代码已被删除。

1 个答案:

答案 0 :(得分:0)

如果您不希望基于散列的路由更改hashHistory与browserHistory,您的index.js将如下所示:

import React from 'react'
import { render } from 'react-dom'
import { Router, Route, browserHistory } from 'react-router'
import App from './modules/App'

render((
  <Router history={browserHistory}>
    <Route path="/" component={App}/>
    <Route path="/repos" component={Repos}/>
    <Route path="/about" component={About}/>
  </Router>
), document.getElementById('app'))

请注意,如果您想拥有browserHistory,则需要配置服务器,以便在服务器端处理路由,可以找到更多信息here