enums - 枚举频率 - 错误 UndefinedFunctionError

标签 enums elixir

我正在尝试使用Enum函数频率但它不起作用。 基于文档Enum - Elixir v1.10.2

当我尝试使用该示例时:

Enum.frequencies(~w{ant buffalo ant ant buffalo dingo})
# OR
Enum.frequencies(["ant", "buffalo", "ant", "ant", "buffalo", "dingo"])

我总是会出现错误:

** (UndefinedFunctionError) function Enum.frequencies/1 is undefined or private

我已经尝试在 iex shell、.ex 文件正文和在线执行该代码示例 Repl .

我本地的 Elixir 版本 Elixir 1.9.4(使用 Erlang/OTP 22 编译)

在我看来,我错过了文档中的一些要点,因此我正在寻找一些专业提示;)

最佳答案

您提供的文档描述了Elixir v1.10.2,但您使用 Elixir 1.9.4 。看起来 Elixir 1.9.4 中根本不存在函数 Enum.frequencies/1,该函数是在 1.10.0 及更高版本中添加的。由于这个原因,你会看到错误。我想,如果您需要使用 Enum.frequencies/1,您需要将 Elixir 升级到最新版本或至少直到版本 1.10.0

关于enums - 枚举频率 - 错误 UndefinedFunctionError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60533639/

相关文章:

java - 比较 JSP 中的枚举值

Cakephp + 枚举支持 : unable to save or select enum 0 and 1

unicode - 如何检查字素是否是字母?

json - 如何正确将 JSON 数据发送到 phx phoenix API

erlang - 如何通过在 Elixir 中调用进程来捕获或挽救被调用进程的崩溃错误

c# - 使用属性减少枚举到枚举的映射以及枚举/常量到 Action 切换语句

json - 来自 JSON 字符串的 typescript `enum`

Elixir:主管、GenServer 和应用程序之间的区别

erlang - Ecto 的片段允许 SQL 注入(inject)

c++ - 如何确保用户输入允许的枚举