新手问题 Rails 里 &. 这样的用法是什么意思

dearest · June 30, 2016 · Last by 1c7 replied at April 18, 2018 · 5660 hits

看到有这样的代码 @user_info&.user_mobile 不理解 &. 的作用是什么

ruby 2.3 引入的安全调用运算符

# Ruby <= 2.2.x
if user && user.admin?
  # do something
end

# Ruby 2.3
if user&.admin?
  # do something
end

What's new in Ruby 2.3?

单身狗语法,从此不再 try

单身狗运算符

&. try 基本上用途都是对付对 nil 对象。a.b.c 这样的火车是 nil 的老窝。 代码中频繁出现 a.b.c.method, 违反 Demeter law. 我觉得需要认真思考类设计,并适当包装。 &. 和 try 在代码中到处出现的时候,可以用 null object 来解决很大一部分。

You need to Sign in before reply, if you don't have an account, please Sign up first.