VSCode 的“打开文件夹时运行”任务中的“打开文件夹时”是什么意思?

Jus*_*ant 1 visual-studio-code vscode-tasks

VSCode 去年添加了一项功能,可以在“打开文件夹时”自动运行任务。但是在使用工作区时“打开文件夹”是什么意思?

具体来说,如果你打开一个工作区,"runOn": "folderOpen"任务会运行吗?如果是这样,如何?

我之所以这么问是因为我将任务配置为自动运行,但是当我打开工作区时它没有运行。(任务在手动触发时正确运行。)

Jus*_*ant 9

“打开文件夹时”任务在您打开工作区时运行,就像打开非工作区文件夹时使用“打开文件夹...”链接一样。

但是,还需要一个额外的步骤:您需要选择自动运行任务。我通过文档中的微妙提示弄清楚了这一点:

每个允许任务自动运行的人

这让我想知道如何让任务自动运行。事实证明,您需要进行配置更改,如下所示:

  1. 打开命令面板(SHIFT+CMD+P)并选择“任务:管理文件夹中的自动任务” 在此处输入图片说明

  2. 选择“允许文件夹中的自动任务” 在此处输入图片说明

  3. 现在关闭并重新打开工作区,打开文件夹的任务将按预期运行。

令人沮丧的是,通常的 JSON 设置文件中不存在此设置,这意味着它不会出现在“设置”的搜索中。 在此处输入图片说明

这让我浪费了大量时间来寻找这个设置,这就是为什么我在这里发布一个问答对来帮助这个问题的下一个受害者。

更新:我还建议 VSCode 将此添加到设置中。https://github.com/microsoft/vscode/issues/64618#issuecomment-554072124