Инвариантная ошибка в реагировать на родной не может найти магазин - PullRequest
0 голосов
/ 29 апреля 2018

Я настраивал Redux для собственного приложения, над которым я работал несколько дней. Я продолжаю получать инвариантную ошибку, не могу найти хранилище ни в контексте, ни в подпорках. Я гуглял несколько дней и пробовал несколько разных решений, но не могу исправить эту ошибку.

Магазин:

`import React from 'react';
import { render } from 'react-dom'
import { Provider } from 'react-redux';
import { createStore,applyMiddleware } from 'redux';
import thunk from 'redux-thunk';
import combineReducers from "./reducers/combineReducers";
import App from './App'

const store = createStore(combineReducers ,applyMiddleware(thunk));

render(
    <Provider store={store}>
        <App/>
    </Provider>,
    document.getElementById('App')
);`

Компонент приложения

import React, {Component} from 'react';
import {StyleSheet, View} from 'react-native';
import MainMenu from "./Components/MainMenu";
import {Root} from "native-base";
import {connect} from 'react-redux';
import {Font, AppLoading} from 'expo';

export class App extends Component {
    state = {
        loadingFont: true,
        testText:'Test'
    };

        async componentDidMount() {
            try {
                await Font.loadAsync({
                    'pixel-font': require('./assets/fonts/Roboto-Medium.ttf'),
                });
                this.setState({loadingFont: false});

            }catch (e) {
                console.log(e)
            }
        }


    render() {
        if (this.state.loadingFont) {
            return (
                <Root>
                    <AppLoading/>
                </Root>
            );
        }
        return (
            <View style={styles.container}>
                <MainMenu/>
            </View>
        );
    }
}
const mapStateToProps = state => {
    return {productions:state.productions}
};

export default connect(mapStateToProps)(App);

const styles = StyleSheet.create({
    container: {
        flex:1,
        backgroundColor:'#fff',
        justifyContent: 'center',
    },
});

Я знаю, что это вопрос, который задавался довольно много раз, но я чувствую, что просмотрел все ответы и не нашел ни одного, который работает. На данный момент я знаю, что где-то допустил ошибку, но, посмотрев на это пару дней, я как бы ослеп, чтобы найти какое-то решение самостоятельно.

1 Ответ

0 голосов
/ 29 апреля 2018

Экспортируйте магазин из файла вашего магазина и импортируйте его в файл App.js. Поставщик также должен быть в вашем файле App.js, обернутом вокруг <Root>. Ты работаешь в реакции-родной? Если это так, вы не будете использовать React-Dom, Expo загрузит файл App.js.

...