Не удалось найти «store» ни в контексте, ни в «Connect (Registration)» - PullRequest
0 голосов
/ 08 октября 2018

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

enter image description here

Ниже приведен мой код:

Регистрация.js

import React, { Component } from 'react';
import  NavBar from './subcomponents/NavBar'
import SignUpForm from './subcomponents/SignUpForm'
import { connect } from 'react-redux'
import {userSignUpRequest} from "./actions/signUpActions";

import PropTypes from 'prop-types';

class Signup extends Component {

    render() {

        const {userSignUpRequest} = this.props;

        return (
            <div>
                <NavBar/>
                <SignUpForm userSignUpRequest={userSignUpRequest}/>

            </div>

        );
    }
}

Signup.propTypes = {

    userSignUpRequest: PropTypes.func.isRequired
}

export default connect(null, { userSignUpRequest })(Signup);

index.js

import React from 'react';
import ReactDOM from 'react-dom';
import './redux-js/index';
 import App from "./App";
import {applyMiddleware, createStore} from "redux";
import thunk from "redux-thunk";


const store = createStore(
    (state = {})  => state,
     applyMiddleware(thunk)
);

ReactDOM.render(
     <provider store={store}>
         <App />
     </provider>
         , document.getElementById('root'));

Ответы [ 2 ]

0 голосов
/ 08 октября 2018

Вам нужно обернуть компонент App компонентом Provider, импортированным из 'react-redux'

import { Provider } from 'react-redux';

ReactDOM.render(
     <Provider store={store}>
         <App />
     </Provider>
         , document.getElementById('root'));
0 голосов
/ 08 октября 2018

Ошибка

Не удалось найти «store» ни в контексте, ни в подпунктах «Connect (Registration)». Либо оберните корневой компонент в <Provider>, либо явно передайте «store» как реквизит «Connect (Registration)»

Solution

Вам необходимо импортировать поставщика в ваш файл index.js:

import React from 'react';
import ReactDOM from 'react-dom';
import './redux-js/index';
import App from "./App";
import {applyMiddleware, createStore} from "redux";
import thunk from "redux-thunk";

import { Provider } from 'react-redux'; //added

const store = createStore(
    (state = {})  => state,
     applyMiddleware(thunk)
);

ReactDOM.render(
     <Provider store={store}>   //fixed typo
         <App />
     </Provider >
         , document.getElementById('root'));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...