Я пытаюсь запустить свое приложение с реакцией-native-navigation и persistStore с избыточным persistStore.
Я получаю предупреждение о том, что функции недопустимы в качестве дочернего элемента React. Это может произойти, если вы возвращаете компонент вместо визуализации.
Есть ли обходной путь для запуска этого начального экрана, недавно я добавил функцию startApp и вызвал ее внутри рендера.
Вот мой начальный компонент для запуска приложения:
import React, { Component } from "react";
import { Provider } from "react-redux";
import { View, Text } from "react-native";
import { persistStore } from "redux-persist";
import { Navigation } from "react-native-navigation";
import Mapbox from "@mapbox/react-native-mapbox-gl";
import { registerScreens } from "./screens";
import store from "./store/configureStore";
import { appInit, getInitialScreen } from "./appInit";
import { handleErrorObject } from "./lib/handleError";
Mapbox.setAccessToken("pk.eyJ123425KKbcgNww");
export default class App extends Component {
startApp = () => {
const persistor = persistStore(store, null, () => {
registerScreens(store, Provider);
appInit(store)
.then(() => {
const initialScreen = getInitialScreen(store.getState());
Navigation.startSingleScreenApp({
screen: {
screen: initialScreen
},
passProps: {
persistor
},
drawer: {
left: {
screen: "DrawerMenuScreen"
}
},
appStyle: {
orientation: "portrait"
}
});
})
.catch(error => {
handleErrorObject("Error initializing app", error);
});
});
};
render() {
return <View>{this.startApp}</View>;
}
}