問題タブ [typescript]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
370 参照

typescript - TypeScript - コード出力の分離

私はタイプスクリプトを試していますが、非常に便利です。

私はかなり大きなプロジェクトを持っており、タイプスクリプトを使用して書き直すことを検討していました。ここでの主な問題は次のとおりです。

ファイル A.ts:

ファイル B.ts:

このコマンドで A.ts をコンパイルすると:

拡張後に「B」を脅かす方法がわからないため、コンパイラからエラーが発生します。

したがって、「解決策」は A.ts に (コードの最初の行として) 含めることになります。

同じコマンドで A.ts を再度コンパイルする

B.ts と A.ts の両方のコードを含むコンパイル済みの A.js が生成されます。(これはとてもいいかもしれません)

私の場合、コンパイル済みの A.js ファイルで A.ts コードをコンパイルするだけでよく、B.ts のものをそこに入れたくありません。

確かに、私が欲しいのは:

  • tsc --out A.js A.ts => A.ts のみをコンパイル
  • tsc --out B.js B.ts => B.ts のものだけをコンパイル

「extends」キーワードを削除することでそれを行うことができますが、それを行うと、タイプスクリプトの利点のほとんどが失われます。

これを行う方法があるかどうか誰か教えてもらえますか?

0 投票する
4 に答える
4808 参照

angularjs - EmberJS、AngularJS、または BatmanJS の TypeScript サポート

TypeScript はこれらの優れた MV* フレームワークをサポートしますか?

これを尋ねるのは時期尚早であることは承知していますが、この若い JavaScript イニシアチブで彼らのサポートに到達する可能性についてはどうでしょうか?

0 投票する
28 に答える
554425 参照

typescript - TypeScript で「ウィンドウ」に新しいプロパティを明示的に設定するにはどうすればよいですか?

のプロパティを明示的に設定して、オブジェクトのグローバル名前空間をセットアップしますwindow

TypeScript は次のことを強調MyNamespaceし、不平を言います。

プロパティ 'MyNamespace' はタイプ 'window' の値に存在しません

MyNamespaceアンビエント変数として宣言し、window明示性を削除することでコードを機能させることができますが、それはしたくありません。

どうすればwindowそこにとどまり、TypeScriptを満足させることができますか?

window補足として、TypeScript が文句を言うのは特に面白いと思いますany

0 投票する
4 に答える
15768 参照

node.js - TypeScriptでのExpress()の使用

TypeScriptのnode.jsで最新バージョンのExpessを使用したいと思います。サンプルでマイクロソフトが提供するexpress.d.tsは、3.0.xより前のバージョンに基づいて構築されているようです。以前のバージョンでは、

ただし、3.0.x以降は次のことを行う必要があります。

Express.d.tsはこれをサポートしていません...これに関するハックを見つけました:Express.d.tsに次の行を追加しました:

アプリオブジェクトを作成するときはapp.ts、次のようにします。

これで問題が解決したようで、エラーなしでコンパイルされています。また、インテリセンスのサポートも受けています。しかし、これはハックです...まず、なぜ私はこのようなものを書くことができないのですか?

これは、この問題を修正するための推奨される方法ですか?

0 投票する
2 に答える
1914 参照

typescript - _thisという名前の変数を作成することはこれと競合する必要がありますか?

_thisこれは非常に工夫された例ですが、クラス関数のどこかに変数を作成するとします。

changeNameコンパイルされたコードの関連部分は次のようになっているため、関数を呼び出すと、これは期待どおりに機能しません。

これは悪いJavascriptです。2つのvar宣言が互いに上書きしています。コンパイラによって作成されたものは、私の_thisによって上書きされてい_thisます。

私が見る限り、この動作はTypeScript仕様では指定されていません。

なぜ彼らは対立する必要がありますか?コンパイラーは、変数とコンパイラーで生成された変数が互いに踏みつけられない_thisようにするなど、自動生成された変数に名前を付けて名前を付けたかどうかを検出できませんか?_this2

0 投票する
3 に答える
11746 参照

visual-studio-2012 - Visual Studio TypeScript オプション

Visual Studio 内から amd モジュール (--module amd) を生成するように TypeScript コンパイラに指示するにはどうすればよいですか。

ありがとう。

0 投票する
25 に答える
627346 参照

typescript - TypeScript でプロパティをオブジェクトに動的に割り当てるにはどうすればよいですか?

Javascript のオブジェクトにプログラムでプロパティを割り当てたい場合は、次のようにします。

しかし、TypeScript では、これによりエラーが発生します。

プロパティ「prop」は、型「{}」の値に存在しません

TypeScript のオブジェクトに新しいプロパティを割り当てるにはどうすればよいですか?

0 投票する
4 に答える
34743 参照

typescript - TypeScript から直接 JavaScript を呼び出す

TypeScript のドキュメントをダウンロードしました。いくつかの JavaScript クラスがあり、TypeScript テスト アプリケーションでこれらのクラスを作成して使用したいと考えています。

含まれている JavaScript の JavaScript 関数を TypeScript から呼び出すにはどうすればよいですか。「d.ts」ファイルを作成したくありません。クラスを作成し、そのメソッドを呼び出し、そのプロパティにアクセスするだけです。

それ、どうやったら出来るの?


TypeScript で kendoUI を使用しようとしています。

たとえば、ウィンドウを表示するには、次のことを行う必要があります。

  1. ウィンドウのコンテンツを表す HTML を用意します。ID logonDialog の div があります。この div
    は最初は非表示になっています。
  2. ウィンドウを作成します: logonDlg.kendoWindow(logOnParams);
  3. 次に、jQuery を使用して div を表示します。logonDlg.show();

正常に動作しています。JS は希望どおりに生成されますが、タイプ「JQuery」の値にプロパティ「kendoWindow」が存在しないため、エラーが発生します。

この種のエラーを無効にするにはどうすればよいですか。ライアンが言ったように、私はうまくいきませんでした。

0 投票する
6 に答える
62866 参照

visual-studio - VisualStudioを使用したTypeScriptコードのデバッグ

(生成されたJavaScriptをデバッグする代わりに)VisualStudioでTypeScriptソースをデバッグする方法はありますか?

TypeScript言語仕様から:

TypeScriptはオプションでソースマップを提供し、ソースレベルのデバッグを可能にします。

したがって、tsコードにブレークポイントを配置してデバッグできると期待していましたが、機能しません。仕様には、デバッグに関する他の言及は見つかりませんでした。これを機能させるために私がすべきことはありますか?おそらく、「オプションで」という言葉は、それが機能するために何かをする必要があることを示唆しています...何か提案はありますか?

0 投票する
9 に答える
103844 参照

javascript - できないはずの TypeScript プライベート メンバーにアクセスできるのはなぜですか?

TypeScript でのプライベート メンバーの実装を検討していますが、少し混乱しています。Intellisense はプライベート メンバーへのアクセスを許可しませんが、純粋な JavaScript では、すべてそこにあります。これは、TS がプライベート メンバーを正しく実装していないと思わせます。何かご意見は?