src目录外部的create-react-app导入限制

src目录外部的create-react-app导入限制,第1张

src目录外部的create-react-app导入限制

这是create-react-
app开发人员添加的特殊限制。的实现是

ModuleScopePlugin
为了确保文件位于中
src/
。该插件可确保从应用程序源目录的相对导入不会到达其外部。

您只能在

eject
运行create-react-app项目后才能禁用此功能。

大多数功能及其更新都隐藏在create-react-app系统的内部。如果您这样做

eject
,将不再具有某些功能及其更新。因此,如果您还没有准备好管理和配置用于配置Webpack的应用程序等,请不要进行
eject
*** 作。

按照现有规则播放(移至src)。但现在你可以知道如何删除限制:

eject
和删除
ModuleScopePlugin
从的WebPack配置文件


create-react-app v0.4.0开始,

NODE_PATH
环境变量允许为绝对导入指定路径。并且由于不赞成使用v3.0.0
NODE_PATH
,而建议将其设置
baseUrl
jsconfig.json
tsconfig.json

绝对进口允许使用

import App from 'App'
代替
import App from './App'
相对于在基本URL指定的值。

此功能对monorepos或其他配置问题特别有用,但不适用于从

public
文件夹导入图像或其他任何内容。

public
文件夹的内容将放置在
build
文件夹中,并通过相对URL提供。另外,所有导入的内容都将由webpack处理,也将放置在
build
文件夹中。

如果您从

public
文件夹中导入某些内容,则该内容可能会在该
build
文件夹中重复出现,并且可以通过两个不同的URL(或使用不同的加载方式)使用,这最终会使软件包下载大小变大。

从src 文件夹 导入 是可取的,并且具有很多优点。一切将通过webpack打包到捆绑包中,并具有 最佳大小和最佳装载效率 。


有中间解决方案,即重新布线系统,它允许您以编程方式修改webpack配置。但除去该

ModuleScopePlugin
插件是不是一个很好的解决方案; 最好添加完全可用的类似于的其他目录
src

当前,除根文件夹

create-react-app
外,不支持其他目录
src
。这可以使用react-app-rewire-alias完成



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4976055.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-14
下一篇 2022-11-14

发表评论

登录后才能评论

评论列表(0条)

保存