首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在线示例不起作用

在线示例不起作用
EN

Stack Overflow用户
提问于 2020-09-26 18:34:06
回答 2查看 19关注 0票数 0

我正在使用官方指南学习redux:

https://react-redux.js.org/introduction/basic-tutorial

在本指南中,有指向示例项目的链接:

https://codesandbox.io/s/9on71rvnyo

在这个例子中,有一个部分我无法理解如何工作。

问题(即我无法理解的部分)出现在文件src/redux/store.js中。

在这个文件中有一个import语句:

代码语言:javascript
运行
复制
import rootReducer from "./reducers";

但是在目录树中,在整个项目中的任何文件中都没有定义和导出rootReducer。

这个应用程序是如何工作的?

我遗漏了什么?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-09-26 18:38:15

当你做的时候

代码语言:javascript
运行
复制
import <something> from 'somePath'

somePath通常是指向文件或node_modules中的模块的相对路径,但它也可以是指向包含index.js文件的文件夹的路径。

在这里,同一个目录中有一个名为reducers的文件夹,该文件夹包含一个index.js文件,该文件可以:

代码语言:javascript
运行
复制
export default combineReducers({ todos, visibilityFilter });

因此,import rootReducer from "./reducers";指向嵌套文件夹中的index.js文件,并将其默认导出放到rootReducer变量中。

这并不是针对React或Redux的--这对于import语法在JavaScript中是通用的。

例如,如果app.js包含import something from './components',下面的两个文件系统结构将导致路径解析成功:

代码语言:javascript
运行
复制
|- app.js
|- components (folder)
   | index.js
   | componentA.js
   | componentB.js
代码语言:javascript
运行
复制
|- app.js
|- components.js
票数 2
EN

Stack Overflow用户

发布于 2020-09-26 18:38:52

答案很简单:

代码语言:javascript
运行
复制
import rootReducer from "./reducers";

将自动在reducers-folder中查找一个名为index.EXTENSION的文件。

如果您查看src/reduc/reducers/index.js,您将看到如下所示:

代码语言:javascript
运行
复制
export default combineReducers({ todos, visibilityFilter });

它实际上是导出示例项目在src/redux/store.js中导入的内容。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64081251

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档