gulp - 在 VSCode 中创建文件观察器

标签 gulp visual-studio-code file-watcher vscode-tasks

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

是否可以在 VS Code 中完成?如果是,那我该怎么做?

最佳答案

您必须创建一个扩展来完成您的场景。你说你已经有了 gulptask.json 的自动化,所以我认为将其转换为扩展会相对容易。

创建扩展时应注意这一点

package.json

您的扩展应该适用于 JadeStylus,因此 package.json 文件应该包含:

"activationEvents": [
    "onLanguage:Jade",
    "onLanguage:Stylus"
]

OnSave 事件

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

文件观察器

VSCode 有一个内置的 FileWatcher,您只需通过 vscode.workspace.createFileSystemWatcher 创建它。重点是它只监控打开的文件夹/项目中的文件

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

发布/安装

如果您认为您的扩展只适合您您不能在市场上发布,无论出于何种原因,请不要担心,因为您可以创建自己的扩展,将它们打包并install locally .

关于gulp - 在 VSCode 中创建文件观察器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43366113/

相关文章:

visual-studio-code - VSCode 没有检测到我的任何 pytest 测试

TypeScript Watch - 删除已删除的目标 JS 文件

javascript - 我可以将 gulp livereload 设置为在编译所有文件后运行吗?

javascript - 正则表达式匹配文本文件中的文件名

Gulp Sass 与 errLogToConsole : true still stopping my other watch tasks

css - 错误 : File to import not found or unreadable: foundation

Visual Studio 2017 中的 Angular 7 : How to deploy Angular "Build" folder along with ASP.Net Web Api

c# - 在 Visual Studio Code 中模仿 Visual Studio IntelliSense 过滤行为?

powershell - 取消注册已注册的 filewatcher 事件不起作用

c# - 文件观察器可以读取放置在观察路径上的文件夹的内容吗?