在 VSCode 中创建文件观察器

noo*_*oob 3 gulp file-watcher visual-studio-code vscode-tasks

我正在尝试摆脱WebStorm并尝试配置VS Code以获得WebStorm. 我正在尝试File Watcher在 VS Code 中实现功能。我曾经在 WebStorm 中有 Jade 和 Stylus 的文件观察器。我已经为他们准备了 gulp 任务,并且也添加了它们tasks.json。我什至也为他们提供了键绑定。但我必须手动运行它们。我想要的是,无论何时保存文件,它都会检查它是Jade文件还是Stylus文件,然后运行相应的任务以生成 HTML 或 CSS 文件。

是否可以在 VS Code 中做到这一点?如果是,那么我该怎么做?

ale*_*ani 6

您必须创建一个扩展来完成您的场景。你说你已经gulptask.json你的自动化,所以我认为这将是比较容易翻译,要延期。

创建扩展时,您应该注意这一点

包.json

您的扩展程序应该适用于Jadeor Stylus,因此该package.json文件应该具有:

"activationEvents": [
    "onLanguage:Jade",
    "onLanguage:Stylus"
]
Run Code Online (Sandbox Code Playgroud)

OnSave 事件

您可以使用两个事件来检测文件保存:onDidSaveTextDocumentonWillSaveTextDocument,具体取决于您的需要。

文件观察者

VSCode 有一个内置的FileWatcher,你只需要通过vscode.workspace.createFileSystemWatcher. 关键是它只监视打开的文件夹/项目中的文件

如果你需要检测外部的变化,你应该使用fs.watchFilechokidar

发布/安装

如果您认为您的扩展程序只对您有用,或者出于任何原因无法在市场上发布,请不要担心,因为您可以创建自己的扩展程序,将它们打包并在本地安装