小编RWD*_*WDJ的帖子

如何更正 RuboCop 中的“Style/ClassVars”?

我看到了在 Ruby 中使用类变量的问题;然而,似乎 RuboCop 的关于如何解决这个问题的文档是不够的。

现在,我可以忽略它。鉴于我的项目,没关系。但是,我只想知道 Rubocop 试图告诉我做什么,因为它没有意义。

在with 中执行提供的代码给出:irb 0.9.6Ruby 2.5.1

class A
  @test = 10
end
#=> 10
class A
  def test
    @@test # you can access class variable without offense
  end
end
#=> :test
A.new.test
Traceback (most recent call last):
        3: from /Users/Ricky/.rbenv/versions/2.5.1/bin/irb:11:in `<main>'
        2: from (irb):12
        1: from (irb):9:in `test'
NameError (uninitialized class variable @@test in A)
Did you mean?  @test
Run Code Online (Sandbox Code Playgroud)

所以不行。我们显然不能在没有冒犯的情况下访问类变量。irb非常生气。但是,ruby 建议使用@test. 也许这只是一个错字?让我们试试看: …

ruby rubocop

12
推荐指数
2
解决办法
3463
查看次数

标签 统计

rubocop ×1

ruby ×1