代码有效.但除此之外,还有一个错误.为什么以及如何修复



代码工作正常。但除此之外,还有一个错误。为什么以及如何修复?

def make_casserole
puts "Preheat oven to 375 degrees"
ingredients = yield
puts "Place #{ingredients} in dish"
puts "Bake for 20 minutes"
end
make_casserole do 
"noodles, celery, and tuna"
end
make_casserole do 
"rice, broccoli, and chicken"
end
make_casserole
blocc.rb:31:in `make_casserole': no block given (yield) (LocalJumpError)from blocc.rb:45:in `<main>'

必须将行ingredients = yield更改为ingredients = yield if block_given?。这是因为您在不传递块的情况下调用该方法。如果no block given

相关内容

最新更新