如何从一系列管道函数中捕获一个值?

时间:2015-11-11 11:51:28

标签: elixir phoenix-framework

假设我有这个功能链

%{key1: "value 1", key2: "value 2"}
|> CustomModule.func1
|> CustomModule.func2
|> CustomModule.func3

如何将返回值分配给final_result之类的变量,然后在case语句中使用它或进一步测试?

1 个答案:

答案 0 :(得分:6)

您可以使用=

进行绑定
final_result = %{key1: "value 1", key2: "value 2"}
|> CustomModule.func1
|> CustomModule.func2
|> CustomModule.func3

有些人更喜欢以下风格(https://github.com/niftyn8/elixir_style_guide#source-code-layout):

final_result =
  %{key1: "value 1", key2: "value 2"}
  |> CustomModule.func1
  |> CustomModule.func2
  |> CustomModule.func3