javascript - Typescript 找不到导入的模块

标签 javascript node.js typescript

我看到了很多相关问题,但似乎没有一个答案适合我的场景。我的 node.js 应用程序( Node 版本 v13.5.0)中有 2 个文件,根目录下的 start.tsapp.ts ,它们看起来像这样:

开始.ts:

import app from './app';

console.log(app);

app.ts:

const app = {};
export default app;

tsconfig.json:

{
  "compilerOptions": {
    "allowJs": true,
    "baseUrl": ".",
    "esModuleInterop": true,
    "lib": ["esnext", "es2015"],
    "module": "commonjs",
    "moduleResolution": "node",
    "outDir": "./build",
    "pretty": true,
    "resolveJsonModule": true,
    "sourceMap": true,
    "target": "es6"
  },
  "include": ["start.ts", "app.ts", "src/**/*.ts"],
  "exclude": ["node_modules", "build"]
}

但是当我尝试使用 ts-node 运行 start.ts 时,我收到此错误:

Error: Cannot find module /<project_directory>/app imported from /<project_directory>/start.ts
    at Loader.resolve [as _resolve] (internal/modules/esm/default_resolve.js:96:13)
    at Loader.resolve (internal/modules/esm/loader.js:72:33)
    at Loader.getModuleJob (internal/modules/esm/loader.js:156:40)
    at ModuleWrap.<anonymous> (internal/modules/esm/module_job.js:42:40)
    at link (internal/modules/esm/module_job.js:41:36)

我还尝试将文件扩展名添加到导入中,但随后出现未知文件扩展名“.ts”错误。而且看起来我不需要打字,因为应用程序是一个简单的对象,但为什么它找不到模块呢?谢谢。

最佳答案

好像找到了,是因为在package.json中我添加了"type": "module"

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

相关文章:

angular - 从嵌套在 Firestore 文档中的集合中获取数据的最佳方法是什么?

angular - 如何在Angular4中的同一 View 中使用ngx分页实现多个分页?

javascript - 引用全局变量时的奇怪行为。这是javascript中的错误吗?当然不是!

javascript - 不要从 django 表单打印媒体

javascript - 使用 Bookshelf.js 进行限制和偏移

node.js - React应用程序中的Socket io多个连接

javascript - 只能在计算器上计算平方

javascript - 滚动到元素时创建导航淡入不同的颜色

angularjs - MEAN 和地理空间查询 - 查找与给定名称的另一个相交的 LineStrings

javascript - 将 GeoFire 与 Firebase 9.17.1 一起使用时出现类型错误 : "t.split is not a function"