問題タブ [tsc]
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 - TS2307: モジュール 'ionic/ionic' が見つかりません
tsc
ionic2 プロジェクトで使用しようとすると、typescript ファイルで次のエラーが発生します。
エラー:
TS2307: Cannot find module 'ionic/ionic'
コード:
私の tsconfig.json ファイル:
私の npm -g リスト:
vim - leafgarland-vim TypeScriptのexperimentalDecoratorの警告を削除できません
leafgarland-vimプラグインをインストールしていますが、.ts ファイルを保存すると、常に次の警告が表示されます。
~/.vimrclet g:typescript_compiler_options="--experimentalDecorators"
に追加しようとしましたが、最初に「:」と入力した後、vim 内からそのコマンドを入力しました。私もできるし、それが返されます。それでも、保存するたびにこのエラーが発生します。:echo g:typescript_compiler_options
--experimentalDecorators
このエラーを解消するにはどうすればよいですか? --experimentalDecorators
その仕事をしていないようです。
編集:
vim 内からこれを試しました:
:let g:typescript_compiler_options = '--dnwejuidbnwejudbn'
そして、コードはまだコンパイルされていますが、同じ警告が表示されます。let g:typescript_compiler_optionsは実際には何もしていないと思います。
typescript - VS Code: 保存ファイルで typescript を監視する
Visual Studio Code では、tsconfig.json のコードに次のコードがあります。
ご覧のとおり、watch
オプションは true です。これだけでは、atom-typescript のように .ts ファイルを .js にコンパイルするには不十分なようです。基本的に、新しくコンパイルされた .js は、.ts を保存するときに .ts ファイルと同じディレクトリにある必要があります。
また、他の手段で gulpfile.coffee を既に使用しているため、ルート プロジェクトで gulp を使用することは避けたいと思います。誰にも手がかりがありますか?
javascript - Typescriptコンパイラが.tsを.jsに変更しないのはなぜですか?
下のフォルダーの左側の画像では、/src Typescript (青) が tsc を使用して/dist (紫) Javascript にコンパイルされていることがわかります。
.ts モジュール ファイルを参照する左側のソース ファイルで、右側の .js モジュール ファイルを参照するようにコンパイルされていないことがわかります。
なぜだめですか?tsc が参照を変換しない場合、Javascript はどのように実行される可能性がありますか?
2 番目の質問:次に、コンパイル済みの参照を.tsから.jsに手動で変更してnode dist/server.jsを実行しようとしましたが、エラーcannot find module tools/typescriptImport.js' が表示されます。モジュールが正しく参照されているのにノードがモジュールを見つけられないのはなぜですか (右端でモジュールであることがわかります)。
reactjs - RelayクエリをTypeScriptからES5にトランスパイルする方法は?
TypeScript で Web アプリを作成しています。アプリは Facebook の React と Relay を使用します。私の TypeScript ソース コードは、TypeScript コンパイラ TSC を使用して ES6 コードにコンパイルされます。次に、Babel を使用して ES6 コードを ES5 コードにトランスパイルします。Relay がブラウザーで機能するには、Babel プラグインが Relay GraphQL クエリを変換する必要があります: https://facebook.github.io/relay/docs/guides-babel-plugin.html。問題は、TSC が最初にこれらのクエリをトランスパイルするため、Babel Relay プラグインがそれらを認識できなくなり、ブラウザーが理解できるものにトランスパイルされないため、ブラウザーがエラーをスローすることです。
キャッチされない不変違反: RelayQL: 実行時に予期しない呼び出しが発生しました。Babel 変換が設定されていないか、この呼び出しサイトを識別できませんでした。として逐語的に使用されていることを確認してください
Relay.QL
。
私のTypeScriptソースコード:
... これは TSC によって次のようにコンパイルされます。
... 次のような代わりに (Babel Relay プラグインが適切に動作しないため):
これは、Babel Relay プラグインがトランスパイルされたバージョンを認識せず、その結果、ブラウザーが理解できるものにクエリをトランスパイルしないためです。
これを機能させる方法は?
typescript - TypeScript tsc からの TS2307 エラーをミュート/無視する
tsc
TypeScriptコンパイラからの TS2307 エラーをミュートする方法はありますか?
コードベースには多くのTS2307 エラーがあるため、実際の/新しいエラーや警告を見つけるのは非常に困難です。
更新:
このエラーはimport
、型定義が存在しない状態で外部モジュールが編集された場合に発生します.d.ts
。
私は知っていますが、私たちtsd
が使用する多くのライブラリには型定義が存在しません。
typescript - typescript コンパイラと live-server をうまく連携させるには?
私は Angular2 と typescript を使用していますが、開発プロセスでフラストレーションを感じています。
tsc -w
ファイルの変更を監視し、すぐにコンパイルするために使用しています。変更されたファイルを参照するすべてのファイルをコンパイルするため、完了するまでに 2 ~ 3 秒かかる場合があります。
live-serverが ts 以外のファイルの変更を監視し、ブラウザを更新して変更を反映できるように使用していlive-server . --ignorePattern=.*\.ts
ます。理想的には、コンパイルが完了したときにブラウザを強制的に更新する必要があります。tsc
最終的に何が起こるかというtsc
と、変更時に .ts ファイルがすぐに作成され、その .js および .js.map ファイルが出力されます。live-server
これにより、更新がトリガーされます。次に、変更された .ts ファイルのtsc
すべてのファイルを再コンパイルしimport
、すべての .js および .js.map ファイルを発行します。これには約 2 秒かかります。その後live-server
、ブラウザを再度更新します。
live-server
行を次のように変更するlive-server . --wait=3000 --ignore-pattern=.*\.ts
と、js ファイルの 2 回目の発行から 3 秒待機します。つまり、5 秒 (変更されたファイルを参照するファイルのコンパイルに 2 秒 + 待機に 3 秒) かかることを意味します。一連の小さな変更が連続して行われます。それは私のファイルまでずっとコンパイルされboot.js
ます。
tsc
コンパイル済みファイルを一度だけ出力するために使用できるオプション/フラグはありますか? .js ファイルを 1 つだけ出力したくはありませんが、他のソリューションも受け入れています。
typescript - typescript jspmプロジェクトから型付きファイル(d.ts)を作成するには?
TypeScriptでjspmプロジェクトを書いています。それはうまく機能し、人生は幸せです。
d.ts
ここで、モジュール用に単一のファイルを作成したいと考えています。
tsc -d
からのインポートを歩くことができないため、 mytsconfig.json
では機能しません。tsc
jspm
jspm
そしてts
( plugin-typescript
) にもそのオプションはありません。
私は何をすべきか?