Javascript Typescript找不到导入的模块
我看到了很多相关的问题,但没有一个答案适合我的场景。我在node.js应用程序(节点版本v13.5.0)中有两个文件,Javascript Typescript找不到导入的模块,javascript,node.js,typescript,Javascript,Node.js,Typescript,我看到了很多相关的问题,但没有一个答案适合我的场景。我在node.js应用程序(节点版本v13.5.0)中有两个文件,start.ts和app.ts位于根目录,它们看起来如下: start.ts: import app from './app'; console.log(app); app.ts: const app = {}; export default app; tsconfig.json: { "compilerOptions": { "allowJs": true,
start.ts
和app.ts
位于根目录,它们看起来如下:
start.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)
错误:找不到从//start.ts导入的模块//应用程序
在Loader.resolve[as_resolve](internal/modules/esm/default_resolve.js:96:13)
在Loader.resolve(internal/modules/esm/Loader.js:72:33)
在Loader.getModuleJob(internal/modules/esm/Loader.js:156:40)
在ModuleWrap。(内部/modules/esm/module_job.js:42:40)
at链接(内部/modules/esm/module_job.js:41:36)
我也尝试过将文件扩展名添加到导入中,但随后它得到了未知的文件扩展名“.ts”错误。看起来我不需要打字,因为应用程序是一个简单的对象,但为什么它找不到模块呢?谢谢。看起来我找到了它,因为我在package.json中添加了
“type”:“module”