0

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

 if (geolocation_points.exists? || geolocation_boxes.exists?)
  self.geolocation = true
 end
4

1 回答 1

2

假设代码在一个方法中,您将编写如下保护条件:

def my_fancy_method
  return unless geolocation_points.exists? && geolocation_boxes.exists?
  self.geolocation = true
end

但是,如果geolocation应该始终为真或假,我可能会这样写,它可以在没有 if 或保护条件的情况下工作:

def my_fancy_method
  self.geolocation = geolocation_points.exists? && geolocation_boxes.exists?
end
于 2016-02-09T18:47:11.493 回答