[解決済み] Typescript を単一ファイルにコンパイルする
質問
私はTS 1.7を使用しています。私は私のプロジェクトを私のhtmlファイルに含めることができるようにする1つの大きなファイルにコンパイルしようとしています。
私のプロジェクト構造は次のようなものです。
-build // Build directory
-src // source root
--main.ts // my "Main" file that uses the imports my outer files
--subDirectories with more ts files.
-package.json
-tsconfig.json
私のtsconfigファイルは
{
"compilerOptions": {
"module":"amd",
"target": "ES5",
"removeComments": true,
"preserveConstEnums": true,
"outDir": "./build",
"outFile":"./build/build.js",
"sourceRoot": "./src/",
"rootDir": "./src/",
"sourceMap": true
}
}
プロジェクトをビルドするとき、私はbuild.jsファイルが私のソースからコンパイルされた一つの大きなファイルであることを期待します。 しかし、この build.js ファイルは空であり、私は js ファイルにコンパイルされたすべてのファイルを取得します。
私の各TSファイルは以下のような感じです。
import {blabla} from "../../bla/blas";
export default class bar implements someThing {
private variable : string;
}
私は何を間違えているのでしょうか?
どうすればよいのでしょうか?
これは TypeSript 1.8で実装される予定です。 . そのバージョンでは outFile オプションは モジュール が amd または システム .
現時点では、この機能は開発版のTypescriptで利用可能です。 それをインストールするには、実行します。
$ npm install -g typescript@next
以前のバージョンでは、たとえ明らかでなくとも モジュール と outFile オプションは一緒に動作させることはできません。
確認できるのは これ をご覧ください。
1.8 よりも低いバージョンで単一のファイルを出力したい場合、そのファイルに対して モジュール オプションで tsconfig.json . 代わりに、名前空間を モジュールキーワード .
あなたの tsconfig.json ファイルは以下のようになるはずです。
{
"compilerOptions": {
"target": "ES5",
"removeComments": true,
"preserveConstEnums": true,
"outFile": "./build/build.js",
"sourceRoot": "./src/",
"rootDir": "./src/",
"sourceMap": true
}
}
また、TSファイルは以下のようになっているはずです。
module SomeModule {
export class RaceTrack {
constructor(private host: Element) {
host.appendChild(document.createElement("canvas"));
}
}
}
そして、import文を使う代わりにnamespaceでimportを参照する必要があります。
window.addEventListener("load", (ev: Event) => {
var racetrack = new SomeModule.RaceTrack(document.getElementById("content"));
});
関連
-
[解決済み】Typescriptで、! (エクスクラメーションマーク/バン)演算子でメンバを再参照するのは?
-
[解決済み] あるJavaScriptファイルを他のJavaScriptファイルにインクルードするにはどうすればよいですか?
-
[解決済み] JavaScriptで二重引用符と単一引用符はいつ使うべきですか?
-
[解決済み] TypeScriptで文字列を数値に変換する方法とは?
-
[解決済み] TypeScript で `window` に新しいプロパティを明示的に設定するにはどうすればよいですか?
-
[解決済み] TypeScriptでの取得と設定
-
[解決済み】TypeScriptのインターフェースと型について
-
[解決済み] Chart.jsを使ってドーナツチャートの中にテキストを追加するには?
-
[解決済み] node.jsで文字列のsha1ハッシュを取得するにはどうすればよいですか?
-
[解決済み] V8 Javascript エンジンのスタンドアロン実行
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] JavaScriptで、ある文字列が別の文字列の中に出現するすべてのインデックスを見つけるにはどうすればよいですか?
-
[解決済み] TypeScriptのdeclare classとinterfaceの違いとは?
-
[解決済み] React js 親コンポーネントから子コンポーネントの状態を変更する
-
[解決済み] オブジェクトの配列からReactコンポーネントをレンダリングする
-
[解決済み] Promise : then vs then + catch [重複].
-
[解決済み] 文字列とラベルのローカライズとグローバリゼーションのベストプラクティス【終了しました
-
[解決済み] javascriptでオプションのパラメータを扱う
-
[解決済み] JavaScript で css プロパティを使用して HTML 要素の背景色を設定する方法
-
[解決済み] jQueryのバージョン1、バージョン2、バージョン3の違いは何ですか?[クローズド]
-
[解決済み] JavaScriptでDIVを表示・非表示にするには?