我想寫與打字稿節點模塊,這是我在多大程度上得到:創建模塊的NodeJS與打字稿
MysqlMapper.ts
export class MysqlMapper{
private _config: Mysql.IConnectionConfig;
private openConnection(): Mysql.IConnection{
...
}
private createSelectAllQuery(constructor): string{
...
}
public getAll<T>(constructor): Q.Promise<Array<T>>{
.....
}
constructor(config: Mysql.IConnectionConfig){
...
}
}
index.ts
export * from "./MysqlMapper";
的package.json
{
"name": "mysql-metadata-orm",
"version": "1.0.0",
"description": "A Simple ORM using reflect-metadata",
"main": "build/index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"repository": {
"type": "git",
"url": "..."
},
"author": "+",
"license": "MIT",
"dependencies": {
"mysql": "^2.9.0",
"q": "^1.4.1",
"reflect-metadata": "^0.1.2"
}
}
我激活了宣言代我tsconfig文件,但我真的不知道如何得到一個聲明文件,允許導入這樣的模塊:
import * as Mapper from "mysql-metadata-mapper"
我希望有人可以幫助我,因爲它使我非常瘋狂。
@Update
這些是產生.d.ts檔案:
index.d.ts
export * from "./MysqlMapper";
MysqlMapper.d.ts
import * as Q from "q";
import * as Mysql from "mysql";
export declare class MysqlMapper {
private _config;
private openConnection();
private createSelectAllQuery(constructor);
getAll<T>(constructor: any): Q.Promise<Array<T>>;
constructor(config: Mysql.IConnectionConfig);
}
如何獲取聲明文件?
你可能會在這裏發佈自動生成的聲明爲這個模塊產生了什麼? – FlorianTopf
當然我可以 – Ced
我知道這是一個非常古老的問題,但對於其他任何人稍後絆倒它(就像我過去一週所做的那樣),您可能會發現這個打字稿樣板項目很有用:https://github.com/bitjson/typescript-starter –