問題タブ [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.
typescript - TypeScript:void return typeは任意のタイプに変換されましたか?
次のコードでエラーが発生しない理由を理解できないようです。
型は戻り値を返す関数の配列である必要があることを明確に述べてvoid
いますが、を返す関数をそこにプッシュしてもstring
、コンパイラーは文句を言いません。の定義をに変更したrg
場合
コンパイラは文句を言い始めます。
これはバグですか、それともvoid returnタイプがどのように機能するのでしょうか(つまりvoid
、使用された場合は何でも起こり、基本的にreturnタイプと同じになりany
ます)?
typescript - VisualStudioのTypescriptAMDモジュール
Visual Studio2012Ultimateを使用してTypeScriptから始めています。コンパイラコマンドに--moduleamdタグを含めてMSBuildを変更しました。コンパイラはAMDモジュールの生成を開始しました。
プロジェクトにNugetパッケージのRequireJSを含め、メインのHTMLに次の行を含めました。
SiteMasterとAuthenticateの2つのモジュールがあります。モジュールSiteMasterは単純です:
Authenticateモジュールをインポートし、関数run()を呼び出すだけです。SiteMasterのjsは次のようになります。
})
問題は、ソリューションを参照するとエラーが発生することです。
どうすればこの問題を解決できますか?
前もって感謝します。
requirejs - TypeScript で AMD 経由で jquery を要求する方法
TypeScript モジュールに jquery AMD モジュールを要求するにはどうすればよいですか。たとえば、スクリプトのディレクトリ構造が次のようになっているとします。
module.ts から生成された js ファイルで、require.js 経由で jquery-1.8.2.js をロードする必要があります。
現在私は持っています:
これにより、「jquery」という名前は現在のスコープに存在しません。
typescript - オプションのパラメーターを持つTypeScriptラムダ関数
オプションのパラメーターを受け入れるラムダ関数を定義するときに問題が発生します。奇妙な部分は、完全な「関数」構文を使用すると無名関数は機能しますが、ラムダの短縮/矢印構文では次のようなエラーが発生することです。
- 名前'a'は現在のスコープに存在しません
- 提供されたパラメータがコールターゲットのどのシグニチャとも一致しません
- 期待される ')'
例:
typescript - TypeScript: インターフェイス vs クラス vs モジュール vs プログラム vs 関数
http://www.typescriptlang.org/Content/TypeScript%20Language%20Specification.pdfにある TypeScript 仕様を読みました 。
しかし、それは私を次のように混乱させました:
- インターフェース
- クラス
- モジュール
- プログラム
- 機能。
- 宣言と var
誰かが上記のどれをいつ使用すべきかを簡単に理解するのを手伝ってもらえますか? インターフェイスとクラスは C# 版と同じですか?
indentation - TypeScript の Allman スタイルの中括弧
TypeScript コンパイラは、従来 JavaScript コードを壊す場所でAllman スタイルの中かっこを安全に使用できるように適応できますか? TypeScript は慣用的な JavaScript を生成するように設計されているため、結果のブレースはとにかく K&R スタイルで生成されます。
例として:
PS私はただ興味があります。一般的に受け入れられている JS の慣行に反することが「良い考え」であるかどうかについての議論にはあまり興味がありません。
javascript - プロトタイプは typescript でどのように拡張されますか?
関数プロトタイプを拡張しましたが、typescript が認識しません。
結果: tsc -e
このオブジェクトを拡張するにはどうすればよいですか?
casting - TypeScriptのプロパティを使用して関数オブジェクトを作成します
いくつかのプロパティも保持されている関数オブジェクトを作成したいと思います。たとえば、JavaScriptでは次のようにします。
TypeScriptでは、このタイプを次のように説明できます。
しかし、キャストを必要とせずに実際に構築することはできません。そのような:
キャストなしでこれをどのように構築しますか?
knockout.js - Typescript 間違ったコンテキスト this
コード:
HTML:
問題は removeUser メソッドにあります。デフォルトでは、コンテキストをバインドしない場合、これは == UserToDelete - ビューモデル オブジェクトではありません。constructor: に追加するとthis.removeUser = this.removeUser.bind(this); (manually enforce context)
、コンテキストは必要に応じて this == ビューモデルになりますが、TypeScript は「関数を (user:User) に変換できません =>void には呼び出し署名が必要ですが、関数には署名がありません」と文句を言います。
javascript - TypeScriptでRaphaelJavaScriptライブラリを使用する
TypeScriptでJavaScriptライブラリを使用することは可能ですか?
たとえば、TypeScriptでRaphaelを使用し、JSファイルを自分/scripts folder
に追加してに追加したいとし_references.js
ます。
しかし、TSファイルで宣言したい場合:
Intellisenseは常に次のように述べています。
Raphael does not exist in the current scope.
TSファイルはコンパイルされません。