2017-05-11 8 views
2

ESCプロジェクトをtypescriptに移行しようとしています。これはNodeJSにtypescriptモジュールを書く私の最初の試みです。typescriptエラーインラインを表示するためにVSCodeを設定する方法

Angular-CLIではこれまでのところうまくいくようです。

私はコマンドラインtscを使用してコンパイルしていますが、コードエディタにエラーとインテリセンスを表示する方法がわかりません。

ディレクトリには、以下の2つのファイルがあります。それをコンパイルすると、期待どおりにコンパイルエラー:Supplied parameters do not match any signature of cal l target.がスローされます。これは問題ありません。

しかし、ブラケットを取り出したり、このようなエラーを入力するような意図的な構文エラーを行っても、VSCodeはエディタにエラーを表示していません。 .tsファイルのエディタでインライン構文やコンパイラエラーを表示するにはどうすればよいですか?

検証-error.ts

/** 
* Wrapper for a particular validation error. 
*/ 
export class ValidationError extends Error { 
    private type: string; 

    constructor(error: any) { 
    super(error); 
    Error.captureStackTrace(this, this.constructor); 
    this.message = error.message; 
    this.type = 'ValidationError'; 
    } 
} 

それから私は、ワークフローをテストするための簡単なスペックを記述しようとしている:

検証-error.spec.ts

import { ValidationError } from './validation-error'; 
import * as should from 'should'; 

describe('Validation Error',() => { 
    it('should create a new instance',() => { 
    const instance = new ValidationError(); 
    should.exist(instance); 
    }); 
}); 

編集後:

私はまだこれでコツコツ - 私はtasks.jsonにこの仕事を自動的に実行するようにセットアップtscをしました:

{ 
    // See https://go.microsoft.com/fwlink/?LinkId=733558 
    // for the documentation about the tasks.json format 
    "taskName": "tsc", 
    "command": "tsc", 
    "isShellCommand": true, 
    "args": ["-w", "-p", "."], 
    "problemMatcher": "$tsc-watch", 
    "echoCommand": true 
} 

私はエラーが$tsc-watchを使用して、適切に報告された場合、エラーはおそらくも示すだろうと思われますエディタで私は、タスクを実行すると、私のような出力が得られます。

running command$ tsc -w -p . 
src/hello.ts(15,1): error TS2346: Supplied parameters do not match any signature of call target. 
4:24:40 PM - Compilation complete. Watching for file changes. 

しかし​​ビューで報告された問題はない - 明らかにコンパイラの問題がありますにもかかわらず。

は、ドキュメントのこのページから設定$tsc-watchガット:https://code.visualstudio.com/docs/editor/tasks

+0

プロジェクトに 'tsconfig.json'ファイルがありますか? – Julien

+0

私はすでにそれを持っています。 –

答えて

1

でも、ローカルまたはグローバルにインストール活字体を持たずに、以下の設定は、インライン・エラーを提供します。

C:/temp 
    index.ts 
    tsconfig.json 

index.tsここ

{ } 

tsconfig.json

let x: number; 
x = "foo"; 

xにインラインエラーを示すスクリーンショットです。

enter image description here

そのセットアップを試してみて、何が起こるかに戻って報告してください。

+0

興味深い。私はなぜ私が働いていないのだろうと思って、どこからでも 'tsconfig'をコピーしたので、おそらくバージョンの問題や何かがあります。私は結局tsc問題解決者と一緒に昨日働いてくれました - 少なくとも私はそれが働いたと思います。最初にコンパイルするとVSコードのエラーが表示されないバグのように見えましたが、時計モードの間にファイルを変更した場合、エラーは予想どおりに表示されました。だから私の設定では、おそらく、いくつかの組み合わせでエラーになるだけです。 –

+0

それはあなたのために働いたことを聞いてうれしい@リチャードG。 –

関連する問題