javascript - 找不到 TypeScript 模块

标签 javascript node.js typescript visual-studio-code eslint

在一个非常大的混合 TS/JS 项目中,使用 VSCode,我得到以下错误。

Cannot find module 'shared/common/enums/httpMethod'.ts(2307)

应用程序构建成功,我们的 pre-commit Hook 运行 eslint 并且测试没有失败。

这发生在我导入 .ts 文件的所有 .ts 文件中。我在这个问题上找到了几个答案,但都没有帮助。

到目前为止我所做的包括:

  1. 在版本底部的状态栏中更改 VSCode 中 TypeScript 的工作区版本。
  2. 使用此命令从 node_modules 链接 evscode.d.ts 文件 ln -s/home/work/mymodule/node_modules/vscode.d.ts/usr/share/code/resources/app/out/vs/vscode.d.ts
  3. NPM 安装,甚至删除 node_modules 并重新启动 VSCode

这是我们使用的 .tsconfig 文件。偶尔在团队中,其他成员会遇到此错误,但在 npm install 并重新启动 VSCode 后,他们就没事了。

{
  "compilerOptions": {
    "baseUrl": "./src",
    "jsx": "react",
    // Target latest version of ECMAScript.
    "target": "esnext",
    // Search under node_modules for non-relative imports.
    "moduleResolution": "node",
    // Process & infer types from .js files.
    "allowJs": true,
    // Don't emit; allow Babel to transform files.
    "noEmit": true,
    // Enable strictest settings like strictNullChecks & noImplicitAny.
    "strict": true,
    // Disallow features that require cross-file information for emit.
    "isolatedModules": true,
    // Import non-ES modules as default imports.
    "esModuleInterop": true,
    "skipLibCheck": true
  },
  // Import custom typings
  "include": ["src/shared/**/*", "./typings"]
}

这不是 .tsconfig 的问题。我研究了它,我们有正确的设置。只是把它放在那里,以获取有关此事的更多信息。如果有人遇到与我相同的问题,请发布答案或指向它的链接。谢谢!!

最佳答案

我找到了问题的答案。在 tsconfig.json 中。问题是在 include 部分。我在 src/admin/.. 中遇到了问题。

因此,我相应地修改了文件以包含该文件。之后我没有任何问题:

  "include": ["src/shared/**/*", "src/admin/**/* ", ./typings"]

所以,我想一般的答案是包括每个模块,除了一般的 src 模块。

关于javascript - 找不到 TypeScript 模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55343945/

相关文章:

javascript - 从部分填充 Razor 部分

javascript - 使用 jQuery $.ajax 调用另一个控件的操作

node.js - Node : Async job queue processing

javascript - 尝试过的二叉树示例将输出作为一个对象,我怎样才能将这个对象值放入一个数组中以处理进一步的问题

typescript - 向函数的参数添加一个参数

javascript - 在 Javascript 中更新对象数组中的某些元素时,考虑到数组大小,哪种方法更有效?

javascript - 将 javascript 包含到 html 页面

node.js - 如何使用node js child_process exec运行unix diff命令?

node.js - 将代理请求 react 到后端 API 以发起 Passport、Google OAuth2 请求

angular - NbChat 组件在控制台中不显示和 NullInjectorError,不知道如何修复