【问题标题】:Cannot find module logo.svg?inline - Typescript找不到模块 logo.svg?inline - Typescript
【发布时间】:2019-08-14 19:58:08
【问题描述】:

使用包:vue-svg-loader.

创建了svg.d.ts 文件,内容如下:

declare module '*.svg' {
  const content: any
  export default content
}

然后以这种方式在组件中使用:

import register from '@/assets/svg/register.svg?inline'

导致错误:Typescript Cannot find module '@/assets/svg/register.svg?inline'

但是,如果我删除 ?inline,它就会停止抱怨。如何在.d.ts文件中正确声明svg模块?

【问题讨论】:

    标签: typescript vue.js svg


    【解决方案1】:

    vue-svg-loader 不支持inline 选项,因此查询字符串将被视为模块路径的一部分,从而导致Cannot find module 错误。

    正如您所发现的,删除该选项可以解决该错误。您已经正确声明了 svg 模块类型定义,因此无需执行任何其他操作。

    【讨论】:

      猜你喜欢
      • 2019-08-16
      • 2016-09-20
      • 2016-10-24
      • 2018-11-19
      • 2016-08-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-12-31
      相关资源
      最近更新 更多