小编hid*_*eto的帖子

导入 svg 文件时打字稿找不到模块

它是使用 Typescript、React 和 webpack 创建的 Web 应用程序。我想通过 webpack 使用 svg 文件。然而,我得到了

    TS2307: Cannot find module '~/images/slide.svg'. 
Run Code Online (Sandbox Code Playgroud)

打字稿文件放在/frontend/src/,打字稿文件构建成功。

然后,我在网站上尝试了一些解决方案。但我无法解决这个问题。我的尝试简要描述如下。

我添加了一个文件,其中在“typeRoots”中定义了类型。配置文件

{
  "compilerOptions": {
    "outDir": "./app/assets/javascripts/bundles",
    "sourceMap": true,
    "allowJs": true,
    "allowSyntheticDefaultImports": true,
    "noImplicitAny": true,
    "noUnusedLocals": true,
    "noUnusedParameters": true,
    "moduleResolution": "node",
    "module": "es2015",
    "target": "es6",
    "jsx": "react",
    "removeComments": true,
    "baseUrl": ".",
    "paths": {
      "~/*": ["./frontend/src/*"]
    },
    "typeRoots": ["types", "node_modules/@types"]
  },
  "awesomeTypescriptLoaderOptions": {
    "useCache": true,
    "cacheDirectory": "tmp/build_caches/awesome-typescript-loader"
  },
  "include": [
    "./frontend/src/*"
  ],
  "exclude": [
    "node_modules",
    "bundles",
    "**/*.js"
  ]
}
Run Code Online (Sandbox Code Playgroud)

类型/图像.d.ts

declare module '*.svg' { …
Run Code Online (Sandbox Code Playgroud)

svg typescript reactjs webpack webpack-file-loader

3
推荐指数
3
解决办法
1万
查看次数

标签 统计

reactjs ×1

svg ×1

typescript ×1

webpack ×1

webpack-file-loader ×1