首页 > 解决方案 > '错误:找不到模块'来自 Typescript 中的相对路径

问题描述

index.ts的文件从文件中导入了一个类bindings.d.ts,但是我Error: Cannot find module '../bindings'在运行时没有来自 TS 的编译时错误。

我的bindings.d.ts

export class MyClass {
  sayHello(): string;
}

我的index.ts

import { MyClass } from "../bindings";

console.log(MyClass);

我的tsconfig.json

{
  "compilerOptions": {
    "target": "es6",
    "module": "commonjs",
    "outDir": "./dist",
    "rootDir": "./src",
    "strict": true,
    "moduleResolution": "node",
    "typeRoots": [
        "@types",
        "./node_modules/@types"
    ],
    "esModuleInterop": true,
    "resolveJsonModule": true,
    "skipLibCheck": true,
    "forceConsistentCasingInFileNames": true,
  }
}

我的文件树:

- src
  - index.ts
- bindings.d.ts
- tsconfig.json
- node_modules
- @types

运行时ts-node src/index.ts,我收到以下错误:

Error: Cannot find module '../bindings'
Require stack:
- /Users/slider/Desktop/myProject/src/index.ts
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:902:15)
    at Function.Module._load (internal/modules/cjs/loader.js:746:27)
    at Module.require (internal/modules/cjs/loader.js:974:19)
    at require (internal/modules/cjs/helpers.js:92:18)
    at Object.<anonymous> (/Users/slider/Desktop/myProject/src/index.ts:4:1)
    at Module._compile (internal/modules/cjs/loader.js:1085:14)
    at Module.m._compile (/usr/local/lib/node_modules/ts-node/src/index.ts:1043:23)
    at Module._extensions..js (internal/modules/cjs/loader.js:1114:10)
    at Object.require.extensions.<computed> [as .ts] (/usr/local/lib/node_modules/ts-node/src/index.ts:1046:12)
    at Module.load (internal/modules/cjs/loader.js:950:32)

我也尝试添加"ts-node": { "files": true }tsconfig.json但无济于事。我错过了什么?

标签: typescriptts-node

解决方案


推荐阅读