node.js サーバーとブラウザーの間で再利用できるポータブル モジュールを作成したいと考えています。
それは私のatmを止めているモジュール化のことです. 私はhttp://caolanmcmahon.com/posts/writing_for_node_and_the_browser/を読んでいますが、それは簡単に見えますが、tscでそのようなものを生成することは可能ですか?
node.js サーバーとブラウザーの間で再利用できるポータブル モジュールを作成したいと考えています。
それは私のatmを止めているモジュール化のことです. 私はhttp://caolanmcmahon.com/posts/writing_for_node_and_the_browser/を読んでいますが、それは簡単に見えますが、tscでそのようなものを生成することは可能ですか?
TypeScript を CommonJS / AMD スタイル (つまり、各ファイルがモジュール) で記述する場合、CommonJS (nodejs サーバー用) と AMD (ブラウザー用、require.js を使用) のいずれかを出力するようにコンパイラーに要求できます。
したがって、モジュール ファイルは次のようになります (モジュール宣言なし)。
MyModule.ts
exports class MyClass {
constructor (private id: number) {
}
// ... etc
}
そして、次のコンパイラ コマンドを使用して出力を取得します...
nodejs またはブラウザーの場合 (推奨)
tsc --module umd MyModule.ts
nodejsの場合
tsc --module commonjs MyModule.ts
ブラウザの場合 (require.js を使用)
tsc --module amd MyModule.ts
コンパイルされた出力の唯一の違いは、サーバー コードが CommonJS インポート ステートメントを使用してモジュールをロードし、ブラウザー コードが requires を呼び出すことです。