我正在尝试使用Highline gem输入 Ruby 密码,因为我让用户输入了两次密码,所以我想消除我传入的块上的重复。例如,我的一个简单版本现在正在做的是:
new_pass = ask("Enter your new password: ") { |prompt| prompt.echo = false }
verify_pass = ask("Enter again to verify: ") { |prompt| prompt.echo = false }
我想把它改成这样:
foo = Proc.new { |prompt| prompt.echo = false }
new_pass = ask("Enter your new password: ") foo
verify_pass = ask("Enter again to verify: ") foo
不幸的是,这不起作用。这样做的正确方法是什么?