React Native 和 React JS 应用程序中的路由
Routing in ReactNative and ReactJS app
我想使用 React 和 ReactNative 以及 React-Router 开发一个应用程序。
请帮助我在本机应用程序中组织路由,因为我是这方面的新手。
如果可以在 Web 和本机中使用相同的文件进行路由,那就太棒了。
这是为 Web 部件编写的代码片段:
import React from 'react';
import ReactDOM from 'react-dom';
import {Provider} from 'react-redux';
import {Router} from 'react-router-dom';
import history from './utils/History';
import store from './store/configureStore';
import Root from './containers/Root';
ReactDOM.render(
<Provider store={store}>
<Router history={history}>
<Root/>
</Router>
</Provider>,
document.getElementById('root')
);
如您所见,我为我的应用程序使用了自定义历史记录,'utils/History.js' 文件看起来是这样的:
import createBrowserHistory from 'history/createBrowserHistory';
export default createBrowserHistory();
All 在网络浏览器中运行良好,但在 iOS 模拟器中却不行:
根据 docs,您需要从 react-router
包导入 Router
而不是 react-router-dom
。
import {Provider} from 'react-redux';
import {Router} from 'react-router';
import history from './utils/History';
import store from './store/configureStore';
import Root from './containers/Root';
ReactDOM.render(
<Provider store={store}>
<Router history={history}>
<Root/>
</Router>
</Provider>,
document.getElementById('root')
);
我想使用 React 和 ReactNative 以及 React-Router 开发一个应用程序。 请帮助我在本机应用程序中组织路由,因为我是这方面的新手。
如果可以在 Web 和本机中使用相同的文件进行路由,那就太棒了。
这是为 Web 部件编写的代码片段:
import React from 'react';
import ReactDOM from 'react-dom';
import {Provider} from 'react-redux';
import {Router} from 'react-router-dom';
import history from './utils/History';
import store from './store/configureStore';
import Root from './containers/Root';
ReactDOM.render(
<Provider store={store}>
<Router history={history}>
<Root/>
</Router>
</Provider>,
document.getElementById('root')
);
如您所见,我为我的应用程序使用了自定义历史记录,'utils/History.js' 文件看起来是这样的:
import createBrowserHistory from 'history/createBrowserHistory';
export default createBrowserHistory();
All 在网络浏览器中运行良好,但在 iOS 模拟器中却不行:
根据 docs,您需要从 react-router
包导入 Router
而不是 react-router-dom
。
import {Provider} from 'react-redux';
import {Router} from 'react-router';
import history from './utils/History';
import store from './store/configureStore';
import Root from './containers/Root';
ReactDOM.render(
<Provider store={store}>
<Router history={history}>
<Root/>
</Router>
</Provider>,
document.getElementById('root')
);