use*_*002 2 file-uri cordova react-router
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(
<Router history={ history }>
<Route path='/' component={ YourComponent } />
</Router>
, document.querySelector('#your-app-wrapper'));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2775 次 |
| 最近记录: |