假设有一个名为lib.ts
的文件,其内容如下:
export class A {}
console.log('script loaded');
现在我以这种方式启动ts-node
REPL:npx ts-node -r ./lib.ts
然后我可以看到它打印出";脚本加载";其确认脚本已经被处理。
但是当我在REPL 中运行以下语句时
const a = new A()
它只是抛出错误error TS2304: Cannot find name 'A'.
出于某种原因,我需要预加载我在lib.ts
中定义的类,但它似乎不太好用。出了什么问题,如何解决,或者有其他解决方法吗?
我找到的一个简单解决方案是将它们分配给global
。
class A {}
class B {}
Object.assign(global, {
A,
B,
})
console.log('script loaded');