关于javascript:require a json file导致报错:Cannot find module

require a json file results in an error: Cannot find module

在启用 checkJs 的 VsCode 中打开的 nodej 项目中,当需要像

这样的 json 文件时

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

这会产生错误[ts] Cannot find module

如何消除错误警告?

我尝试过:

  • "resolveJsonModule": true 添加到 jsconfig.json 中的 compilerOptions,但它不起作用。

  • 使用以下内容创建一个 typing.d.ts 文件:

    declare module '*.json' {
    const value: any;
    export default value;
    }

    但是现在,有一个错误 [ts] Type 'typeof import("*.json")' must have a '[Symbol.iterator]()' method that returns an iterator. [2488]


  • 你应该添加

    "resolveJsonModule":true

    作为 tsconfig.json 的 compilerOptions 的一部分。


    我在尝试从 typescript 项目中的文件导入 json 时遇到了类似的问题。

    我用过

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

    而不是

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

    它成功了。