Javascript 当nodeJS通过必需的require(';/main.ts';)运行时,typescript express无法导出并显示未定义
我的问题很难解释,所以我只是简单地修改了代码。让我先发布代码 梅因酒店Javascript 当nodeJS通过必需的require(';/main.ts';)运行时,typescript express无法导出并显示未定义,javascript,node.js,typescript,express,Javascript,Node.js,Typescript,Express,我的问题很难解释,所以我只是简单地修改了代码。让我先发布代码 梅因酒店 import express from 'express'; let a = 1 console.log ('a in main.ts', a) export let b = a const app = express() let PORT = 8080 import {c} from "./efg" console.log("export from efg.ts", c) app
import express from 'express';
let a = 1
console.log ('a in main.ts', a)
export let b = a
const app = express()
let PORT = 8080
import {c} from "./efg"
console.log("export from efg.ts", c)
app.listen(PORT, () => {
console.log(`Server runs at ${PORT}`);
});
efg.ts
import {b} from './main'
console.log('export from main.ts', b)
export let c = 'efg'
main.js
require('ts-node/register')
require('./main.ts')
当我使用ts node main.ts运行代码时,一切正常,它会打印出来
a in main.ts 1
export from main.ts 1
export from efg.ts efg
Server runs at 8080
但是当我使用node main.js运行代码时,奇怪的事情发生了
a in main.ts 1
export from main.ts undefined <---- main.ts export become undefined
export from efg.ts efg
Server runs at 8080
main.ts 1中的a
从main.ts undefined导出您不应该有一个main.js
导入您的main.ts
文件,而是在项目的根目录下有一个文件,然后使用tsc
进行编译,然后您将能够输入以下命令node main.js