【问题标题】:Cannot find module '../../images/Logo.png'.ts(2307) Red Error is Still showing找不到模块 '../../images/Logo.png'.ts(2307) 红色错误仍在显示
【发布时间】:2020-09-22 13:57:56
【问题描述】:

我正在使用 Gatsby 启动器来自定义网站。

我使用的启动器是这样的: https://github.com/fabien0102/gatsby-starter

为什么会出现以下错误:

Cannot find module '../../images/Logo.png'.ts(2307)

继续显示?

一切似乎都成功加载了 localhost 中的 logo.png 文件,但路径 ../../images/logo.png 仍然带有红色下划线(这会阻止成功上传到 Netlify)。

HeaderMenu.tsx 文件如下所示:

我还在学习中,我们将不胜感激。

【问题讨论】:

  • 您是否重新加载了 VSCode 窗口?打开命令面板 (Ctrl + Shift + P) 并选择 Reload window。你可能只需要再次运行 TypeScript 编译器,通常这就是它所需要的 :)
  • 好的,谢谢,我试试看。
  • 当然,您还需要确保图像确实是您尝试从中导入它的位置(在您的情况下,在/src/images/Logo1.png 中)。但我假设你已经这样做了,因为这就是错误的意思。

标签: javascript reactjs typescript import gatsby


【解决方案1】:

这主要是因为 typescript 认为这些导入没有类型定义。

  1. 在您的 src 文件夹中创建一个 declarations.d.ts。即:src/declarations.d.ts.

  2. 为您尝试导入的任何图像格式添加声明。例如:

declare module '*.jpg' {
  export default `` as string;
}

declare module '*.png' {
  export default `` as string;
}
  1. 重新加载您的文件 aaaa 和瞧,您应该开始营业了。

【讨论】:

    猜你喜欢
    • 2019-11-29
    • 2019-10-05
    • 2019-08-23
    • 2020-07-22
    • 2022-07-25
    • 2020-08-08
    • 2021-10-16
    • 1970-01-01
    • 2019-07-17
    相关资源
    最近更新 更多