如何使用javascript模块进入typescript文件

时间:2016-07-29 12:40:48

标签: typescript angular

这是.js文件:

var mongoose=require('mongoose');
var express=require('express');
var app=express();

var connect=mongoose.connect("mongodb://localhost:27017/techo2log");
var schema=mongoose.Schema;
var userschema=new schema(
{
    name:String,
    age:Number,
    address:String,
    created_at:Date,
    updated_at:Date,

}
);

var User=mongoose.model('User',userschema);
userschema.method.dudify=function()
{
this.name=this.name+'-dude';
return this.name;
}

//making the model available to the external file
module.exports=User;

我想在我的类型脚本文件中使用用户模块。我应该如何编写上述代码的typescript定义文件,以便我可以导入我的.ts文件。

1 个答案:

答案 0 :(得分:0)

我假设您编写了一个NodeJS模块,因此首先确保使用])))[作为编译器选项(或在tsconfig.json中)。

其次,您只需要创建一个定义文件。如果您的JS文件名为' user.js',您可以将您的定义文件命名为' user.d.ts'并且看起来像这样:

]}

当然,您可以优化--module commonjs的类型,但作为一个开始,这应该可以解决问题。

第三,您可以使用以下行在TypeScript中导入模块:

declare module 'user' {
    var User: any;
    export = User;
}