javascript - kräva en json-fil resulterar i ett fel: Kan inte hitta modulen


I ett Node.js-projekt öppnat i VSCode med checkJs aktiverat, när en JSON-fil krävs som

const myFile = require('./my-file.json')

Detta orsakar ett fel [ts] Kan inte hitta modul.

Hur är det möjligt att ta bort felmeddelandet?

Jag försökte att:

  1. lägg till "resolveJsonModule": true i compilerOptions i jsconfig.json, men det fungerar inte.

  2. skapa en typing.d.ts-fil med detta innehåll:

    deklarera modul '*.json' { const value: any; export default value; } Men nu finns det ett fel [ts] Typ 'typeof import("*.json")' måste ha en '[Symbol.iterator]()'-metod som returnerar en iterator. [2488]

Svar #1

Du borde lägga till

"resolveJsonModule":true

som en del av compilerOptions till tsconfig.json.

Svar #2

Jag hade ett liknande problem när jag försökte importera json från en fil i ett TypeScript-projekt.

Jag brukade

import * as data from "module/path/filename.json"

istället för

const data = require("module/path/filename.json")

och det fungerade.

Relaterade artiklar