reactjs - 未找到模块。无法解析“资产/样式/常量”
问题描述
我想在我的 React Native 项目中添加 Expo 以在 Web 浏览器中启动它。之后,我尝试导入文件“assets/styles/constants.ts”。这是我的tsconfig.json
:
这是constants.ts
:
在这里我尝试导入这个文件:
之后,我收到此错误:
我究竟做错了什么?我该如何解决?
UPD
小修复tsconfig.json
:
现在我收到错误“找不到模块或其对应的类型声明:
UPD 2
我知道我的 IDE 和 VSCode 通过这些路径可以很好地查看文件和文件夹。当我将鼠标悬停在它们上时,我可以看到它们的内容。Module not found. Can't resolve 'assets/styles/constants'
我输入时收到错误消息expo start --web
。它在浏览器中启动,我收到此错误。
也许问题出在世博会?我已将它添加到 Create React Native 应用程序中。
如果有人有任何建议,请帮忙。
解决方案
替换assets/styles/constants
为../../../assets/styles/constants
解释
如果您像这样导入assets/styles/constants
,则会webpack
将您的项目编译为common js
认为这assets
是包名称的文件,这就是为什么它会在node_mouldes
文件夹中找到并且无法解析文件夹的原因。
因此,如果您想从本地文件中导入某些内容,您可以提供该文件夹的相对路径并像我指定的那样成功导入../../../assets/styles/constants
。
编辑 1
create-react-app
这是为您提供任何文件的唯一方法,import
但是还有另一种方法可以手动构建它,称为absolute path
.
就像你可以告诉 webpack 将src
文件夹作为我项目的根目录,如果我@
在 URL 中指定,则意味着它的绝对路径和根目录是src
之后,您可以将其称为
@/assets
@/pages
@/store
@/anything/any
推荐阅读
- javascript - 如何从 Typescript 中的 request.body 检查对象类型?
- java - 如何将 .xlsx-File 写入 CoyoteOutputStream,错误文件已损坏?
- html - Angular HTML / TS 中的最大大小和文件格式验证
- java - 骆驼在响应原始调用者时丢失 HTTP 标头
- r - R:唯一列值,合并第二列的行
- javascript - 即使在渲染后反应 setState 也不起作用
- reactjs - React JS Hooks 与 useState 调用相同的函数但使用参数
- excel - 如何将可见单元格(应用自动过滤器后)分配给列表框?
- android - SnapCreativeKitApi 总是通向 android 11 中的 playtore
- ruby - 从经过身份验证的用户检索 Google 权限 ID - ruby/rails