我有困難重構這種情況下聲明:重構簡短case語句
case type
when :log
console = 'LOG'.on_blue.bold
console_prefix = "#{prefix}:".blue.bold if prefix
when :error
console = 'ERROR'.on_red.bold
console_prefix = "#{prefix}:".red.bold if prefix
console_message = message.red
when :ok
console = 'OK'.on_green.bold
console_prefix = "#{prefix}:".green.bold if prefix
end
puts "#{console} #{console_prefix} #{console_message}"
有一個變量type
這等於:log
,:error
,或:ok
。我正在使用colorize gem來給控制檯輸出上色。所有的case語句都是定義使用哪種「類型」的顏色。我想過定義一個類方法來設置投入的顏色,但看起來過於複雜。
我相信你錯過了將* console_message *'method'放在*:log *和*:error *分支中? – 2015-02-10 02:32:38
@JikkuJose這是故意的,它是一個變量:P – Net 2015-02-10 02:36:00