3

2 つの npm スクリプトを並行して実行したいのですが、この VS Code は最初のタスクしか実行せず、そこで停止します。どうすれば解決できますか?私tasks.jsonは以下の通りです:

{
"version": "0.1.0",
"command": "npm",
"isShellCommand": true,
"suppressTaskName": true,
"args": [
    "run"
],
"tasks": [
    {
        "args": [
            "gulp"
        ],
        "taskName": "gulp",
        "isBuildCommand": true 
    },
    {
        "args": [
            "babel"
        ],
        "taskName": "babel",
        "isBuildCommand": true
    }
]
}
4

2 に答える 2

1

Windows では、「同時に」NPM パッケージが役立つ場合があります。

package.json

"scripts": {
   "gulpbabel": "concurrently \"npm run gulp\" \"npm run babel\""
},

次にtasks.json

{
    "version": "2.0.0",
    "tasks": [
        {
            "type": "npm",
            "script": "gulpbabel",
            "isBackground": true,
            "problemMatcher": [
                "create_one_for_gulp",
                "create_another_for_babel",
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            }
        }
    ]
}

理想的には (必須ではありませんが)、2 つのproblem matcherも作成する必要があります。1つはgulpタスク用、もう 1 つはbabel. マージされた出力からエラーの詳細を抽出し、それぞれのタスクのウォッチャーがいつ起動/停止するかを検出できる必要があります (VS Code がステータス バーに回転する '\' を表示できるようにするため)。

于 2017-10-12T12:17:44.963 に答える
0

両方のタスクを同時に実行できるとは思えません。代わりに、npm からこれを行うことができます。

tasks.json ファイル内:

{
"version": "0.1.0",
"command": "npm",
"isShellCommand": true,
"suppressTaskName": true,
"args": [
    "run"
],
"tasks": [
    {
        "args": [
            "gulpbabel"
        ],
        "taskName": "gulpbabel",
        "isBuildCommand": true 
    }
]
}

Windows を使用している場合は、package.json ファイルで次のように指定します。

{
  "name": "stacktest",
  "version": "1.0.0",
  "description": "",
  "scripts": {
    "gulpbabel": "gulp & babel"
  },
  "author": "",
  "license": "ISC"
}

unix/linux/mac を使用している場合は、package.json ファイルに次のように記述します。

{
  "name": "stacktest",
  "version": "1.0.0",
  "description": "",
  "scripts": {
    "gulpbabel": "gulp && babel"
  },
  "author": "",
  "license": "ISC"
}
于 2016-03-13T23:11:03.010 に答える