首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >导入节点模块与自定义组件ES6,React

导入节点模块与自定义组件ES6,React
EN

Stack Overflow用户
提问于 2020-05-09 13:25:16
回答 1查看 292关注 0票数 0

有人能帮我了解一下es6导入的工作原理吗?

据我所知,要导入节点模块,我可以写下模块的名称,而不需要提到路径ex:

代码语言:javascript
运行
复制
import React from 'react';

然而,要导入任何自定义组件,我必须提供如下路径:

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

或导入scss

代码语言:javascript
运行
复制
import "../../scss/components/Header.scss";

谁能告诉我它是如何工作的,为什么在结节模块的情况下我不需要给出路径?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-05-09 13:45:39

当你没有给出路径时,它会直接在node_modules目录中查找所提供的模块。

所以,

代码语言:javascript
运行
复制
import React from 'react';

它将查看node_modules/react并从index.js导入React,因为我们没有在react目录之后显式定义任何路径。因此,它类似于react/index.js。如果您必须导入其他文件而不是index.js,那么我们还需要指定文件路径。例如。module/somefile.js

现在,当您指定以/./../开头的路径时,它不会查找node_modules,但会查找目录。你可以查看我的another post,了解更多链接路径的工作原理。

在链接的帖子中,它没有描述./路径。所以让我告诉你,它会找到当前的项目目录。例如。您的项目文件夹是app,并且您指定了./mydir/myfile,然后它将查找app/mydir/myfile.js。如果必须导入javascript文件,则不需要指定.js扩展名。它将自动匹配.js扩展名。但是,如果您必须导入其他文件,例如。.css,那么您还必须指定扩展名。

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

https://stackoverflow.com/questions/61692213

复制
相关文章

相似问题

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