0

我在使用 rubocop 时遇到了一些困难,不知道如何解决这个问题。

我的代码:

class Test
  @hello = 'stackoverflow'

  def self.hello
    @hello
  end
end

p Test.hello

它按照我想要的方式运行,但是当我运行 rubocop 时,它说要使用 attr_reader。如果我尝试使用 attr_reader,它会给我 NoMethodError。

我已经尝试过这样解决这个问题,但 rubocop 仍然不高兴。

class Test2
  @hello = 'stackoverflow'

  class << self
    def hello
      @hello
    end
  end
end

我怎么能解决这个问题?

4

1 回答 1

2

您需要attr_reader在单例类上使用,以便将“hello”方法添加到您的测试单例类。

class Test
  @hello = 'stackoverflow'

  class << self
    attr_reader :hello
  end
end
于 2014-10-26T13:13:00.347 回答