问题标签 [rubocop]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2168 浏览

ruby-on-rails - Rails 中的 Guard 子句 if

我在我的应用程序中使用 Rubocop,它Use a guard clause instead of wrapping the code inside a conditional expression为此提出了建议。请建议一种干净的方法来重写它。

0 投票
1 回答
1324 浏览

ruby - 在代码块上使用保护子句

我有这个方法:

并且我收到 rubocop 错误以使用保护子句而不是if-else语句。最好的方法是什么?

我正在考虑这段代码:

但这条线永远不会被调用:

0 投票
2 回答
444 浏览

ruby-on-rails - rubocop style model self needed but triggering warning

For some reason rubocop is choking on this code I have in my model to properly address accepts_nested_attributes_for to work like find or create. When I tried to remove the self calls it blows up. At this point I am deferring to experts before I shut that darn cop off. Thoughts?

enter image description here

0 投票
1 回答
538 浏览

ruby-on-rails - rake 任务中的 rubocop eval

Rubocop 在以下设置中窒息:

你可以,我现在跳过了 eval 部分,所以我可以使用这个 rake 任务,但我想知道是否有更好的方法来实现这一点。当我们扩展应用程序并添加更多模型时,我想通过将它们附加到列表来节省时间。

0 投票
3 回答
75 浏览

ruby-on-rails - rubocop 应用程序控制器功能验证参数整数使用 nil?谓词

我尝试用多种方法重写这个函数来解决这个错误,但是,在禁用它周围的警察之前,我想听从其他专家的意见。

这是这样使用的:

此问题已通过以下方式解决:检查变量是否为整数

在此处输入图像描述

更新尝试:

参考如何确定字符串是否为数字?

新错误: 在此处输入图像描述

0 投票
1 回答
476 浏览

ruby - RuboCop 错误 - 在 Cucumber RUBY 文件中定义全局变量

我需要在我的 Cucumber env.rb 文件中定义一个全局变量,可以在整个框架中以所有步骤方法访问该变量。目前我在 env.rb 文件中这样定义:

而且我需要将此 var 访问到 Before 钩子以及 After hook 和一些我要重新初始化它的步骤方法。它可以按我的意愿完美运行。但问题是,rubocop 不喜欢这样,并且将错误抛出为“不使用全局变量”。我该如何解决这个问题???

仅供参考,我尝试使用单例将此 var 定义为访问器,但不太确定我在哪里失踪。

0 投票
1 回答
760 浏览

ruby-on-rails - 仅使用预提交验证已修改文件中的更改,而不是验证整个文件

我已经在我的存储库上应用了一个预提交挂钩,我想要做的是使用 rubocop 检查语法,但仅限于我尝试提交的更改。

目前,预提交正在使用 rubocop 检查我已修改的所有文件的样式和规则,并且由于某些旧代码根据 rubocop 无效,因此不允许我提交。

有什么办法可以更改它以仅检查已更改的代码并允许提交是否该代码根据 rubocop 正确。

0 投票
1 回答
779 浏览

sublimetext3 - 如何使 Sublime Text 3 与 rubocop-rspec 一起工作(`require':无法加载此类文件错误)

我有使用 rubocop 和 sublimelinter 的 Sublime Text 3。但是,当我启用 rubocop-rspec 时:

rubocop 在终端的命令行上失败,除非我使用以下命令运行它:

但是,我无法让 rubocop 在 Sublime 中与 rubocop-rspec 很好地工作,我在启用调试的 Sublime 控制台中看到了这一点:

有没有办法让 sublimelinter 放在bundle execrubocop 命令之前?

0 投票
4 回答
733 浏览

ruby - 为什么赞成使用 %w 而不是 ['foo', 'bar']

我通过 rubocop 运行我的代码。它有一个规则: %w或者%W对于一个单词数组。

为什么要%w受到青睐['some', 'words', 'here']?两者似乎是平等的。只是打字少了,还是我们为了混淆而试图变得神秘?

0 投票
1 回答
54 浏览

ruby - 如何避免保护块引起的圈复杂度?

我的一门课有以下功能

该函数有一个保护块,用于检查参数的任何问题(保护块),如果没有发现错误,它会处理这些参数。

现在,当我rubocop用来分析我的代码时,由于防护块,它报告了很高的循环复杂度。我可以降低复杂性的一种方法是定义另一个函数guard_for_intraday_time_series并将所有保护块移到那里。不过,我认为它不是一个合适的解决方案,因为它会为我的项目中的每个函数使用一个保护块填充我的代码。

什么是降低这种复杂性的适当方法,或者它只是不可避免的?