Не удается найти модуль «module.css» или соответствующие ему объявления типов

#javascript #typescript

Вопрос:

Не знаю, почему машинопись вдруг не распознала мой код, он показывает

 Cannot find module './hookStyle/useMemostyle.module.css' or its corresponding type declarations
 

Это происходит, когда я перемещаю стиль в другую папку

Вот конфигурация машинописного текста

 {
  "compilerOptions": {
    "lib": [
      "ESNext",
      "dom"
    ],
    "outDir": "lib",
    "removeComments": true,
    "target": "ES6",
    "baseUrl": "src",
    "esModuleInterop": true,
    "moduleResolution": "node",
    "sourceMap": true,
    "sourceRoot": "/",
    "alwaysStrict": true,
    "allowUnreachableCode": false,
    "noImplicitAny": true,
    "strictNullChecks": true,
    "noImplicitReturns": true,
    "noUncheckedIndexedAccess": true,
    "noUnusedLocals": true,
    "noUnusedParameters": true,
    "allowJs": true,
    "skipLibCheck": true,
    "allowSyntheticDefaultImports": true,
    "strict": true,
    "forceConsistentCasingInFileNames": true,
    "noFallthroughCasesInSwitch": true,
    "module": "esnext",
    "resolveJsonModule": true,
    "isolatedModules": true,
    "noEmit": true,
    "jsx": "react-jsx"
  },
  "include": [
    "./**/*.ts"
  ],
  "exclude": [
    "node_modules/**/*"
  ]
}
 

Это не влияет на код, он все еще работает, но почему машинопись показывает эту ошибку? Как я могу это исправить?

Ответ №1:

Чтобы импортировать пользовательские типы файлов, вы должны использовать синтаксис TypeScript declare module , чтобы сообщить ему, что импорт разрешен. Чтобы сделать это, просто создайте globals.d.ts (файл декларации), где бы ни находился корневой каталог вашего другого кода, а затем добавьте этот код:

 declare module '*.css';