【问题标题】:Ignore ERB in javascript with SublimeLinter-jshint使用 SublimeLinter-jshint 忽略 JavaScript 中的 ERB
【发布时间】:2023-04-02 22:06:01
【问题描述】:

如何让 SublimeLinter-jshint 忽略嵌入的 ruby​​ (erb) 代码?以下代码会导致错误“应为标识符,但看到的是 '

我希望 SublimeLinter-jshint 忽略 <%%> 中的任何内容。

<script>
  <% if @foo %>
    var foo = 'bar';
  <% end %>
</script>

【问题讨论】:

    标签: javascript ruby-on-rails sublimetext3 jshint sublimelinter


    【解决方案1】:

    JSHint 有一个未记录的 ignoreDelimiters 选项。要忽略 erb 语句,请使用以下设置将 .jshintrc 文件添加到您的项目(或使用 SublimeLinter 配置指定一个全局文件):

    {
      "ignoreDelimiters": [
        { "start": "<%=", "end": "%>" },
        { "start": "<%", "end": "%>" }
      ]
    }
    

    【讨论】:

    • 知道如何忽略键指向 ruby​​ erb 的 JS 对象吗?例如:` $('#foo').select2('data', { id: , name: '' });`
    • @ChrisCPO,我不知道。上面的代码适用于字符串(如在您的 name 变量中),但不适用于直接替换(如您的 id 变量)。我最终切换到 ESLint。
    • 感谢@dignoe,结合您的回答,我们最终用一个空字符串包装了我们的 erb,因此当 linter lints 时,erb 被替换为 "" 而不是引发错误的 nil。
    猜你喜欢
    • 2013-11-15
    • 2021-05-23
    • 2015-09-22
    • 2018-09-18
    • 2014-07-13
    • 2016-06-06
    • 2014-09-22
    • 2014-04-22
    • 1970-01-01
    相关资源
    最近更新 更多