如何在 Javascript 中使用已编译的 TypeScript class
How to use a compiled TypeScript class in Javascript
假设我有这个简单的 TypeScript class, Animal.ts
:
export default class Animal {
constructor(public name : string) { }
}
有了这个 tsconfig.json
文件:
{
"compilerOptions": {
"target": "es5",
"module": "commonjs",
"strict": true
},
"files": [
"Animal"
]
}
如何在 javascript 文件中使用此 class 的编译版本(由 运行 tsc
编译),如下所示:
var Animal = require("./Animal");
var newAnimal = new Animal();
我应该在我的 tsconfig.json
文件中编辑一些东西吗?我得到的错误是:
ReferenceError: Animal is not defined
正如Shane van den Bogaard指出的那样,Animal.ts
中的default
关键字需要省略,并且:
const { Animal } = require('./Animal');
应使用 而不是
var Animal = require('./Animal');
这样我们就可以调用Animal
class并使用
初始化一个对象
const { Animal } = require('./Animal');
var newAnimal = new Animal("Clifford");
假设我有这个简单的 TypeScript class, Animal.ts
:
export default class Animal {
constructor(public name : string) { }
}
有了这个 tsconfig.json
文件:
{
"compilerOptions": {
"target": "es5",
"module": "commonjs",
"strict": true
},
"files": [
"Animal"
]
}
如何在 javascript 文件中使用此 class 的编译版本(由 运行 tsc
编译),如下所示:
var Animal = require("./Animal");
var newAnimal = new Animal();
我应该在我的 tsconfig.json
文件中编辑一些东西吗?我得到的错误是:
ReferenceError: Animal is not defined
正如Shane van den Bogaard指出的那样,Animal.ts
中的default
关键字需要省略,并且:
const { Animal } = require('./Animal');
应使用 而不是
var Animal = require('./Animal');
这样我们就可以调用Animal
class并使用
const { Animal } = require('./Animal');
var newAnimal = new Animal("Clifford");