Elixir 模式匹配映射

标签 elixir

我正在尝试模式匹配 map 中的键值并丢弃其他所有内容。

identity = RedditOAuth2.get_identity(access_token)
# here is how i am getting the key "name" right now.
name = Map.get(identity, "name")
#----------------------------------------
# How would i do something like this
%{"name" => name | rest} = RedditOAuth2.get_identity(access_token)

最佳答案

您有多个 =在单场比赛中。

%{"name" => name} = identity = RedditOAuth2.get_identity(access_token)
identity将分配给它的整个 map 和 name将拥有 "name" 中的任何内容 key 。

关于Elixir 模式匹配映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57129564/

相关文章:

pattern-matching - Elixir Phoenix 模式匹配 "params"

Elixir Ecto 仅在创建时添加计算值

elixir - 如何自定义 Phoenix id

elixir - :build_embedded and :start_permanent in Elixir

elixir - 为什么在实现 GenServer 时跟踪 #Reference 比跟踪 #PID 更好?

google-app-engine - 使用 Google App Engine 设置登台环境

erlang - 如何运行由 Elixir 或 Erlang 编译的梁文件?

types - Elixir、透析器、类型和子类型警告

erlang - :observer. 开始抛出错误

elixir - 在测试过程中丢失 conn.assigns