【转】解决Cannot find module ‘./index

2023-07-04  本文已影响0人  holidayPenguin

原文 解决Cannot find module ‘./index.module.scss‘ or its corresponding type declarations.ts(2307)_不吃萝卜不吃菜的博客-CSDN博客

解决Cannot find module ‘./index.module.scss’ or its corresponding type declarations.ts(2307)
嗯,这个错误产生于构建react+typescript+scss。起初百度了好多,但是。。。。不出意料,没有解决。

react项目中引入typescript_2422400672的博客-CSDN博客

配置好之后,问题来了

import styles from "./index.module.scss";

它报错了,竟然报错了。。。额,震惊!!!
如果不是模块引用,即

import "./index.module.scss";

不会产生错误信息,可正常运行。
因为styles本身就不在scss里面,所以会报错。找了一些帖子吧,大概说的就是ts不是Node环境的,要修改一下ts.config.json这个文件。

于是,海找秃头,翻到了希望。
解决这个问题的三个方法。

链接: CSS in Typescript - 掘金 (juejin.cn)

哈哈哈,感觉老哥写的很好,棒棒哒。

接下来,我觉得我的还是适合import,so我选择了第三种,惊不惊喜。

我的tsconfig.json

{
  "compilerOptions": {
    "target": "es6",
    "module": "es2015",
    "lib": [
      "dom",
      "dom.iterable",
      "esnext"
    ],
    "allowJs": true,
    "skipLibCheck": true,
    "esModuleInterop": true,
    "allowSyntheticDefaultImports": true,
    "strict": true,
    "forceConsistentCasingInFileNames": true,
    "moduleResolution": "node",//node环境
    "resolveJsonModule": true,
    "isolatedModules": true,
    "noEmit": true,
    "jsx": "preserve",
    "baseUrl": "src",
    "paths": {
      "@/*": [
        "./*"
      ]
    },
    "experimentalDecorators": true
  },
  "include": [
    "src",
    "typed-css.d.ts"//配置的.d.ts文件
  ]
}

我的typed-css.d.ts

declare module '*.module.css' {
  const classes: { readonly [key: string]: string }
  export default classes
}

declare module '*.module.sass' {
  const classes: { readonly [key: string]: string }
  export default classes
}

declare module '*.module.scss' {
  const classes: { readonly [key: string]: string }
  export default classes
}

问题解决。

上一篇下一篇

猜你喜欢

热点阅读