首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在Jest/React中的“Connect(App)”的上下文或属性中找不到“store”

在Jest/React中的“Connect(App)”的上下文或属性中找不到“store”是因为在测试环境中没有正确配置Redux store。Connect是React-Redux库中的一个高阶组件,用于将Redux store中的状态和操作映射到React组件的属性中。当在测试环境中使用Connect包裹组件时,需要提供一个模拟的store。

解决这个问题的方法是使用Redux提供的测试工具来创建一个模拟的store,并将其传递给被测试组件。以下是一个可能的解决方案:

  1. 首先,确保你已经安装了redux和react-redux库。可以使用以下命令进行安装:
代码语言:txt
复制
npm install redux react-redux --save-dev
  1. 在测试文件的顶部导入所需的库和组件:
代码语言:txt
复制
import React from 'react';
import { Provider } from 'react-redux';
import { createStore } from 'redux';
import { render } from '@testing-library/react';
import App from './App';
import rootReducer from './reducers'; // 假设你有一个reducers文件来管理Redux的状态
  1. 创建一个模拟的store,并将其传递给被测试组件:
代码语言:txt
复制
const store = createStore(rootReducer); // 创建一个模拟的store

test('renders App component', () => {
  render(
    <Provider store={store}>
      <App />
    </Provider>
  );
  // 进行其他的测试断言
});

通过以上步骤,你可以在测试环境中正确地使用Connect高阶组件,并且能够找到“store”。请注意,这只是一个示例解决方案,具体的实现可能因你的项目结构和配置而有所不同。

关于Jest、React、Redux和React-Redux的更多信息,你可以参考以下链接:

  • Jest官方文档:https://jestjs.io/
  • React官方文档:https://reactjs.org/
  • Redux官方文档:https://redux.js.org/
  • React-Redux官方文档:https://react-redux.js.org/
相关搜索:在“连接(清除)”的上下文或属性中找不到"store“在Connect()的上下文或属性中找不到提供程序存储React-testing-library + Redux:在"Connect(Currency)“的上下文中找不到"store”我应该如何填写App Store Connect中的Apple App Privacy?React Native + Redux Orm无法在"Connect (截图)“的上下文或道具中找到"store”App Store Connect中的可本地化信息在发布后重置我无法按App Store Connect中的应用程序按钮在Jest-emotion的tohaveStyleRule中找不到背景属性这个错误有没有解决方法:在"Connect(App)“的上下文中找不到"store”。要么将根组件包装在<Provider>中需要App Store Connect中的哪个用户角色才能在Xcode中启用自动签名?在App Store Connect中为新的Xamarin iOS应用程序提交哪些屏幕截图App Store Connect的activity选项卡中显示的应用程序无法发布公司中错误的人收到"App store connect“审核阶段的更改电子邮件在jest中:“找不到react-redux上下文值;请确保组件包装在<Provider>中”在等待App Store Connect完成处理新版本的过程中,是否可以关闭终端?在一个功能组件中,如何使用react-redux connect访问redux store中的props?在“创建可重用的react-redux包时出错”的上下文中找不到"store“通过Jest在React中测试componentDidUpdate中的prevProps是否可以在app Store Connect/iTunes搜索API中查看应用程序的阶段性发布?在Jest中包装了具有上下文提供程序的组件后,“找不到存储”
相关搜索:
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • react-redux 源码解析一: Provider做了什么,发布订阅模式实现?

    使用过react的同学都知道,redux作为react公共状态管理容器,配合react-redux可以很好的派发更新,更新视图渲染的作用,那么对于react-redux是如何做到根据state的改变,而更新组件,促使视图渲染的呢,让我们一起来探讨一下,react-redux源码的奥妙所在。在正式分析之前我们不妨来想几个问题: 1 为什么要在root跟组件上使用react-redux的provider组件包裹 2 redux是使用store.subscribe()来发布订阅 ,那么react-redux组件更新是否也是用这个模式呢 3 provide 用什么方式存放当前的redux的 store, 又是怎么传递给每一个需要管理state的组件的 带着这些疑问我们不妨先看一下Provider究竟做了什么

    03
    领券