是否有任何內置或一些漂亮的方法可以從單子結果陣列中僅獲取成功或失敗結果?
例如
state
=> [Failure("12345 Product code is not valid"), Success("eiowruqoiu Backbone Product created")]
在哪里
state[0].class
=> Dry::Monads::Result::Failure
state[1].class
=> Dry::Monads::Result::Success
uj5u.com熱心網友回復:
state.grep(Dry::Monads::Result::Failure)
state.grep(Dry::Monads::Result::Success)
或者
state.select { |s| s.is_a?(Dry::Monads::Result::Failure) }
state.select { |s| s.is_a?(Dry::Monads::Result::Success) }
或使用success?/ failure?monads 方法
state.select(&:success?)
state.select(&:failure?)
state.reject(&:success?)
state.reject(&:failure?)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/477391.html
