React-router似乎无法处理通过本地文件协议运行的任何内容.
它将file://后面的第三个斜杠解释为路径.
因此,如果您创建一个应用程序并尝试从file:/// C:/myapp.html运行它
它认为您正在尝试访问路由/C:/myapp.html并抛出错误说
"警告:位置"/C:/myapp.html"与任何路线都不匹配.
当通过文件协议提供应用程序时,有没有办法让react-router工作?
截至目前,路由器根本无法使用cordova/phonegap,因为它们将所有内容都作为本地文件提供.
似乎BrowserHistory不能与文件protocole一起使用.
https://github.com/rackt/react-router/issues/2639
HashHistory似乎有效,我想你可以尝试一下吗?
// import createBrowserHistory from 'history/lib/createBrowserHistory'; import createHashHistory from 'history/lib/createHashHistory'; // let history = createBrowserHistory(); let history = createHashHistory(); ReactDOM.render(, document.querySelector('#your-app-wrapper'));