【问题标题】:Configuring a jshint task in vscode and understanding problemMatcher在vscode中配置jshint任务并理解problemMatcher
【发布时间】:2015-05-23 06:53:58
【问题描述】:

我正在尝试将 jshint 与 vscode 集成。 jshint 任务运行并在输出面板中正确显示结果,但没有其他内容,它立即终止。这是任务定义。

{
  "version": "0.1.0",
  "command":  "jshint",
  "args": ["${file}"],
  "isShellCommand": true,
  "isWatching": true,
  "problemMatcher": "$jshint",
  "showOutput": "always"
}

问题isWatchingproblemMatcher 标志的用途是什么?我原以为isWatching 会在每次保存或每次更改时重新启动任务,而problemMatcher 会获取输出并与编辑器错误和警告集成。文档对我来说不是很清楚,因此我希望能提供有关这些标志的用途以及将 linter 与 vscode 集成的指导。

【问题讨论】:

  • 嗯,你从哪里得到的任务定义?随便找的还是自己写的?谢谢!
  • @malte。经过多次试验和错误后,它被修补在一起。后来我通过重新阅读文档发现需要绝对路径。我放弃了整个想法,因为不支持“isWatching”,必须手动触发 lint 任务,并且错误输出未与编辑器集成。我已经学会了使用内置 linter。

标签: jshint visual-studio-code


【解决方案1】:

isWatching 的想法是支持监视文件系统的任务(例如 gulp.watch)。然而,观看支持仍有一些限制,我们正在努力。这就是为什么我们从未宣布过它(例如,它不是文档https://code.visualstudio.com/Docs/tasks 的一部分)。

有关problemMatcher 属性的描述,请查看https://code.visualstudio.com/Docs/tasks#_defining-a-problem-matcher

【讨论】:

  • 谢谢。我已经查看了 problemMatcher 部分,但无法弄清楚为什么有一个预定义的 $jshint 不适用于 jshint。我做错了什么?
  • 好的。但我从你的一个样本中抓取了这个,isWatching 就在里面。 code.visualstudio.com/Docs/languages/javascript
  • 问题匹配器看起来就像他们处理来自控制台输出的消息。从我阅读文档可以看出,它们不会以任何方式与构建过程进行交互。我错了吗?
  • @DirkBäumer 在哪里可以找到$jshint 问题匹配器的定义?怎么会有人知道$jshint 甚至是一个东西
【解决方案2】:

我已通过以下步骤在 Ubuntu 16.04.3 上的 vs 代码中设置 jshint:
1.安装 jshint globaly,这样您就可以使用命令在任何地方使用: npm install -g jshint
2.现在打开 vs code 并转到 extensions 并搜索 jshint by dirk 并安装它。
3. 现在转到 文件 > 首选项 > 设置
在用户设置中添加这些行,如图所示 vs code user settings snap 1:https://i.stack.imgur.com/5ysC9.png保存重启
3.更多设置选项可以在 > extension> installed extensions > jshint 中找到。在此处单击 jshints 贡献选项卡,您可以找到 more options,您可以将其添加到 vs 代码的用户设置中。

有关更多信息,请使用以下链接:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-05
    相关资源
    最近更新 更多