https://github.com/fish-node/開発環境のTsの直接の構成はまだ非常に面倒であり、ここでは私はこのプロジェクトベースのテンプレートを使用して、直接クローンこのプロジェクトの使用で考慮することができるテンプレートのセットの開発をまとめますテンプレートノード-tsがライン上で開発します。
$ tree
.
├── README.md
├── jest.config.js
├── package.json
├── src
│ ├── index.ts
│ ├── math.ts
│ └── server.ts
├── test
│ ├── math.test.ts
│ └── server.test.ts
├── tsconfig.json
└── tslint.json
复制代码
TS-ノード
JSのTSは、既存のものに基づいていますが、ノードは直接コードTSを実行することはできませんので、実際の使用には、多くの場合、jsのコードにコードをコンパイルするためにTSC TSを使用する必要がありますされ、これは非常に面倒です。
TS-ノードパッケージがノードであり、それは直接使用して簡単に、コードのTSを実行することができ、それはここに公式のリポジトリのgithub.com/TypeStrong / ...、その基本的な使い方は、自分自身を、readmeファイルを参照してください。
私はここであなたができる、package.json、NPMの後に誰もがインストール書き込みTS-ノードにあります
$ npx ts-node src/index.ts
复制代码
このように、コードを実行するためのTsは、それが便利です。
その後、我々はnodemon内のノードがあることを知って、自動的に開発プログラムにおける当社のノードを再起動することができ、TS-ノードでは、対応がTS-ノード-devのです
$ npx ts-node-dev src/index.ts
复制代码
サンプルコード
srcディレクトリには、私は三つの基本的なコードTSを書きました
- math.tsは、最も基本的な使用方法のTSであります
- そして、server.jsは、httpサーバTSを書き込む方法を示し
- index.tsそれはモジュラーTSの使用方法を示します
テストフレームワーク
冗談は、私は冗談+ Tsだけを実証テストフレームワークとして使用テストディレクトリに我々のテストプログラムを書きます。テストファイルを実行して、あなたが使用することができます
$ npm run test
复制代码
@タイプ
@タイプ/種類/冗談tsの@ノードは、私たちはシステムの種類の恩恵を享受しましょう、JS型システムを記述するために与えることができ、型宣言ファイルモジュールです。
プロファイル
- .editorconfigは、我々が設定ファイルを読むためにIDEを構成しています
- このドキュメントのプロファイルをチェックするための我々のコードは、主に公式のコーディングスタイルを推奨継承されていることを確認しtslint.json。しかし、デバッグを容易にするために、「ノー・コンソール」この条件は偽インクルードに設定されています
tsconfig.json
そして、私たちのTSコンフィギュレーションファイルに焦点を当てます。
一般的には、JSONファイルは、コメントではサポートされていないが、我々は文法やJSなどの注釈、コメントを使用できるように便宜上公式tsが、このファイルは、個別に強化されています。
{
"compilerOptions": {
"target": "es2018",
"module": "commonjs",
"outDir": "./dist/",
"rootDir": "./src/",
"strict": true,
"moduleResolution": "node",
"esModuleInterop": true,
"experimentalDecorators": true
},
"exclude": ["./test"]
}
复制代码
これでは、ターゲットは、我々はノード環境であるため、ブラウザの互換性の問題を考慮する必要がjsのコードのバージョンをコンパイルしていないので、我々はまだそれの更新バージョンを使用しようとしています。
私たちのTS-ノードモジュール管理メカニズムは、まだこの問題https://github.com/TypeStrong/ts-node/issues/313#issuecomment-を参照し、ESを指摘されていないため、モジュールのオプションは、私たちのモジュール管理メカニズムであります343 698 812ので、私たちはcommonjs仕様を継続して使用します。
その後ROOTDIRは、私たちのソースコードディレクトリで、OUTDIR私たちのディレクトリは、コードにコンパイルされた後。私たちは、このオプションを除外設定し、同時に、我々のテストファイルは除外します。
ます。https://juejin.im/post/5d00bd35e51d45773e418a61で再現