Reactjs 找不到“;商店「;在“的上下文或道具中”;连接(应用程序)";。我有一个<;供应商>;正在包装组件

Reactjs 找不到“;商店「;在“的上下文或道具中”;连接(应用程序)";。我有一个<;供应商>;正在包装组件,reactjs,redux,Reactjs,Redux,不变冲突:在“连接(应用)”的上下文或道具中找不到“存储”。将根组件包装在中,或者将“store”作为道具显式传递给“Connect(App)” 我不喜欢问一个已经被问了很多次的问题,但我尝试了所有建议的解决方案,但没有运气。 index.js import React, {Component} from 'react' import {AppRegistry} from 'react-native' import {Provider} from 'react-redux' import Ap

不变冲突:在“连接(应用)”的上下文或道具中找不到“存储”。将根组件包装在中,或者将“store”作为道具显式传递给“Connect(App)”

我不喜欢问一个已经被问了很多次的问题,但我尝试了所有建议的解决方案,但没有运气。

index.js

import React, {Component} from 'react'
import {AppRegistry} from 'react-native'
import {Provider} from 'react-redux'
import App from './app'

import configureStore from './store.js'
const store = configureStore();

class MyCounterApp extends Component {
    render() {
        return(
            <Provider store={store}>
            <App/>
            </Provider>
        )
    }
}

AppRegistry.registerComponent('MyCounterApp', () => MyCounterApp)
reducer.js

import {ADD_TO_COUNTER} from './actions'

const initialState = {
    counter: 0
}


const reducer = (state = initialState, action) => {

    switch (action.type) {
        case ADD_TO_COUNTER:
            return {
                ...state,
                counter: state.counter + 1
            }
        default:
            return state
    }
}

export default reducer;
我将随本教程一起介绍以下内容:

您尚未为应用程序组件提供应用商店。这就是为什么无法将组件与减速器连接:

类MyCounterApp扩展组件{
render(){
返回(
)
}
}

从app.js中删除提供程序

如果您想在不使用store的情况下测试组件,首先要做的是导出断开连接的组件,如:
export{component}

然后您必须像这样导入测试文件:
import{Component}from…

如果错误仍然存在,请查看组件是否使用已连接的组件,如果是,则必须模拟该组件,例如:
jest.mock('../../../AnotherComponent',()=>ChildComponent=>props=>)

例如:

const Component = (props: Props) => (
        <>
            ...
            <AnotherComponent // connected component inside <Component />
                {...props}
            />
        </>
    )

const mapStateToProps = (state: State) => ({});
const mapDispatchToProps = {

export default connect(
    mapStateToProps,
    mapDispatchToProps
)(Component);

export { Component }; // disconnected component
const组件=(道具:道具)=>(
...
)
常量mapStateToProps=(state:state)=>({});
const mapDispatchToProps={
导出默认连接(
MapStateTops,
mapDispatchToProps
)(构成部分);
导出{Component};//断开连接的组件

你的index.js.share在哪里?itI做了,这是第二个代码段:)这是作者最初使用它的方式,我也遇到了同样的问题。像这样吗?
code
import configureStore from./store.js'const store=configureStore();类MyCounterApp扩展组件{render(){return(//允许我们访问存储区以分派操作并从//其子项中的状态(即)接收数据。)}AppRegistry.registerComponent('MyCounterApp',()=>MyCounterApp)
code
完全相同的错误。我按照问题中的说明将修改后的代码作为编辑。请在帖子中更新您的代码。您是否导入了商店和提供商?或共享代码?我已将其添加到帖子的“编辑”下.谢谢你的帮助,我真的很感激。我不明白。你有什么不同?index.js中的附加行?这应该是一个react原生应用程序
import {ADD_TO_COUNTER} from './actions'

const initialState = {
    counter: 0
}


const reducer = (state = initialState, action) => {

    switch (action.type) {
        case ADD_TO_COUNTER:
            return {
                ...state,
                counter: state.counter + 1
            }
        default:
            return state
    }
}

export default reducer;
const Component = (props: Props) => (
        <>
            ...
            <AnotherComponent // connected component inside <Component />
                {...props}
            />
        </>
    )

const mapStateToProps = (state: State) => ({});
const mapDispatchToProps = {

export default connect(
    mapStateToProps,
    mapDispatchToProps
)(Component);

export { Component }; // disconnected component