前言
單頁(yè)應(yīng)用:訪問(wèn)不同的路徑,返回的都是同一個(gè)頁(yè)面HTML頁(yè)面,里面的內(nèi)容其實(shí)都是通過(guò)js控制的。
不是單頁(yè)應(yīng)用:訪問(wèn)不同的路徑,返回的HTML頁(yè)面不一樣,不是同一個(gè)HTML頁(yè)面。
概念
- BrowserRouter:h5路由(history API)
- HashRouter:哈希路由
早期實(shí)現(xiàn)頁(yè)面哈希,使用的是錨點(diǎn)技術(shù);
錨點(diǎn)技術(shù)控制:
參考:https://stackoverflow.com/questions/484719/should-i-make-html-anchors-with-name-or-id
dva切換HashRouter路由為BrowserRouter路由
官網(wǎng)給的方案有誤。
參考:https://github.com/dvajs/dva/issues/1268
- 使用前先手動(dòng)安裝下 history 這個(gè)包:
$ npm install history --save
- 修改 src/index.js 文件
import { createBrowserHistory as createHistory } from 'history';
const app = dva({
history: createHistory()
});
參考:
可以參考之前總結(jié)的react-router 4
http://www.itdecent.cn/writer#/notebooks/21173890/notes/22628868/preview