2015-06-03 67 views
10

在0.3.0中,我看到了打字稿的intellisense。但是,我也期待看到一些tslinting,因爲我有一個tslint.json。 VSC是否支持本地生產,還是隻需要依賴飲料?如何配置Visual Studio代碼和tslint?

如果後者可配置爲在文件被更改時運行,或者它需要是明確啓動的手動任務。

+0

基於[網頁]上(https://code.visualstudio.com/Docs/languages)他們說那裏是掉毛的打字稿和C# –

+0

薩米,我缺少什麼支持?我只看到「Intelliense,Linting,大肆宣傳CSS,HTML,Javascript,JSON,Less和Sass」 - 就在「重構,找到C#,Typescript的所有引用」之下。沒有linot for c#/ ts,我沒有看到它在IDE中應用我的tslint.json規則,所以我假設它尚未連線。但是,想看看我是否錯過了某處的切換。 –

+0

「無意修復」https://code.visualstudio.com/issues/Detail/16540 建議我們依賴任務https://code.visualstudio.com/Docs/tasks –

回答

4

你可以添加一個linting任務到你的gulp文件,如下所示。甚至是一個觀察者任務。注意我只是使用TypeScript,而不是gulp插件和tslint,雖然他們也很好。

gulp.task('ts-watcher', function() { 
    gulp.watch('./src/**/*.ts', ['ts-compile']); 
}); 

gulp.task('ts-compile', function(done) {  
    runTSC('src/client', done); 
}); 

function runTSC(directory, done) { 
    var tscjs = path.join(process.cwd(), 'node_modules/typescript/bin/tsc.js'); 
    var childProcess = cp.spawn('node', [tscjs, '-p', directory], { cwd: process.cwd() }); 
    childProcess.stdout.on('data', function (data) { 
     // Code will read the output 
     console.log(data.toString()); 
    }); 
    childProcess.stderr.on('data', function (data) { 
     // Code will read the output 
     console.log(data.toString()); 
    }); 
    childProcess.on('close', function() { 
     done(); 
    }); 
} 
+1

謝謝John。我正在使用一個使用gulp-notify的觀察器。我希望能夠更緊密地集成 - 內聯通知等等。我想它會到來。 –

+0

我同意。新的WebStorm 11現在緊密集成了TSX和在線線跡。我已經在VSC和WS之間來回切換,但是我現在堅持使用Webstorm,直到VSC進行內聯通知。 – pbanka

+0

我其實不使用任何這些。 VS代碼在編輯器中顯示了TypeScript問題,而沒有任何這些任務。你想要什麼額外的東西?我很好奇。 –

15

簡短的回答

VSC是否支持本地掉毛或者我只需要依靠一口?

是。 VS Code支持與TSLint extension. linting沒有必要吞嚥。

步驟TSLint融入VS代碼

首先,安裝先決條件:TSLint和打字稿。

npm install -g tslint typescript 

,一個tslint.json文件添加到您的項目根。你可以用tslint --init來做到這一點,它給你很好的默認值。另外,創建該文件,並使用這個最小配置,它繼承recommended rules.

// tslint.json 
{ 
    "extends": "tslint:recommended", 
    "rules": {} 
} 

,安裝TSLint擴展VS代碼。

  1. 在項目的根目錄中打開VS代碼。
  2. 打開命令調色板CTRL + P
  3. ext install tslint
  4. 選擇安裝,然後選擇啓用,最後重新啓動VS代碼。

第四,享受您的綜合TS林特。

TSLint in action in VS Code.

+1

我還補充說,如果使用自定義的tsconfig.json文件嘗試在控制檯(即tslint **/*。ts)中運行它以確保它是有效的文件,否則它將不會在VSCode中運行。 –

+4

請注意,這隻會顯示打開的文件問題。要獲得「問題」視圖中的完整列表,您需要在此處撰寫更多步驟:http://michael.laffargue.fr/blog/2016/09/16/vscode-make-vscode-tslint-analyze - 多 - 文件 - 項目/ –