React Toolkit 找不到“react-redux”模块

She*_*uti 3 reactjs redux react-redux

我有一个 React-app 项目,其中安装了npmRedux Toolkit

以这种方式为整个应用程序添加商店提供程序后

import React from 'react';
import ReactDOM from 'react-dom';
import { Provider } from 'react-redux';

import './index.css';
import App from './App';
import store from './store/index';

ReactDOM.render(<Provider store={store}><App /></Provider>, document.getElementById('root'));
Run Code Online (Sandbox Code Playgroud)

如果我的npm start应用程序出现此错误:

找不到模块:无法解析“/Desktop/React/redux-app/src”中的“react-redux”

我在Redux 官方网站上读到:

Redux Toolkit 包括 Redux 核心,以及我们认为对于构建 Redux 应用程序至关重要的其他关键包

所以我想单独拥有 Redux Toolkit 应该足以解决任何react-redux模块。

我注意到我的package.jsonpackage-lock.json位于我运行的目录中npm start,即/redux-app ,而在/redux-app/src中找不到该模块。可以吗?我应该移动.json文件吗?一般情况下我该如何解决这个问题?

Zac*_*ber 6

React-Redux 不是 Redux 核心的一部分。

Redux Toolkit 包括 Redux 核心,以及我们认为对于构建 Redux 应用程序至关重要的其他关键包

Redux 不是 React 特有的,它适用于您想要尝试的任何堆栈。使用 Redux 和 React 时,您将需要安装并使用 React-Redux 以使其更好地与 React 配合使用。你不一定需要,但它有很大帮助。

在本例中,它重点关注使用 redux 的应用程序。它是一个工具包,特别是可以极大地改进 redux 的使用。它不关心你尝试和使用 redux 的方式,因此它不会影响react和redux(react-redux包)之间的绑定逻辑。

对此的一个很好的测试是,如果您尝试从中提取代码的不同基本包名称,您应该安装其他包(即使它看起来有效)。即import {} from 'react-redux'vs import {} from '@reduxjs/toolkit

为了回答您的问题,您需要npm install react-redux从基本目录(/redux-app)运行。您不应该将.json文件从原来的位置移动。它们应该位于您项目的根目录中。