В настоящее время мой код получает:
[12:35:59] Warning: <MemoryRouter> ignores the history prop. To use a
custom history, use `import { Router }` instead of `import {
MemoryRouter as Router }`.
это на самом деле NativeRouter, а не MemoryRouter.
Я думал, что настроил свой проект для работы как на реактивных, так и на собственных-web:
import createBrowserHistory from 'history/createBrowserHistory'
import createMemoryHistory from 'history/createMemoryHistory'
import { Platform } from 'react-native'
const customHistory = (() => {
switch (Platform.OS) {
case 'web':
return createBrowserHistory()
case 'ios':
return createMemoryHistory()
default:
console.error(`No such platform configuration ${Platform.OS}`)
}
})()
export default customHistory
Затем я называю это как
import history from '@src/lib/history'
//...
history.replace('/')
, и оно монтируется как:
routing.native.js
export { NativeRouter as Router, Switch, Route, Link, withRouter } from 'react-router-native'
App.js
return (
<ApolloProvider client={this.state.apolloClient}>
<PaperProvider>
<View style={styles.app}>
<Router history={history}>
Это прекрасно работает в реактивно-нативной сети ... но в реактивно-нативной, по-видимому, есть лучший способ?