2017-03-06 68 views
5

我有10個TypeScript項目文件夾彼此相鄰,每個文件夾都包含一個tsconfig.json的根。由於各種原因,項目需要分開編制。自動建立時,其來源的變化,我正在從Windows批處理文件下面,爲每個項目指定項目:如何在VSCode中看到多個TypeScript項目?

tsc -w 

從批處理文件,這是通過使用start完成,從而使不同tsc命令可以並行運行:

start tsc -w -p ./Project1 
start tsc -w -p ./Project2 
... 

現在的問題是,這取決於其他選項,或者:

  1. 創建10個命令行窗口,從而使手錶稍後可以關閉
  2. 運行無形,在這種情況下手錶只能從任務管理器

...這兩者都不希望被殺死。那麼,什麼是在Visual Studio代碼中觀看多個TypeScript項目的「正確」方式?


編輯

我錯了關於這個部分:

運行不可見,在這種情況下手錶只能從任務管理器殺死

如果任務開始使用

start /B tsc -w -p ./Project1 

...然後關閉啓動它的命令提示符也會關閉「不可見」任務,至少在Windows 10上。我從任務管理器驗證了這一點。

回答

0

最優雅的解決方案,我發現是使用concurrently

安裝

npm i -g concurrently 

使用

concurrently "tsc -w -p ./Project1" "tsc -w -p ./Project2" 
0

您可以用任務文件做到這一點,但請記住使用"version": "2.0.0",因爲這不適用於舊版本呃版本。一旦你創建了這個文件.vscode/tasks.json把它放在裏面並修改它以滿足你的需求。一旦準備運行任務,只需運行主Build任務,它應該啓動其他tsc任務。

{ 
    "version": "2.0.0", 
    "command": "tsc", 
    "problemMatcher":"$tsc-watch", 
    "showOutput": "always", 
    "echoCommand": true, 
    "tasks": [ 
    { 
     "taskName": "Build", 
     "isBuildCommand": true, 
     "dependsOn": [ 
     "Build A", 
     "Build B", 
     "Build C" 
     ] 
    }, 
    { 
     "taskName": "Build A", 
     "args": [ 
     "-w", "-p", "./src/project-a" 
     ] 
    }, 
    { 
     "taskName": "Build B", 
     "args": [ 
     "-w", "-p", "./src/project-b" 
     ] 
    }, 
    { 
     "taskName": "Build C", 
     "args": [ 
     "-w", "-p", "./src/project-c" 
     ] 
    } 
    ] 
} 
相關問題