我的视图中有一个函数用于在模板中动态构建HTML元素:
defmodule Recursion do
def buildElements(element,n) when n <= 1 do
element
end
def buildElements(element, n) do
[element | buildElements(element, n - 1)]
end
end
除非我尝试在我的模板中迭代它,否则效果很好:
<%= for element <- MyProject.PageView.Recursion.buildElements("LOL", 2) do %>
<%= element %>
<% end %>
我收到此错误:
no function clause matching in Enum."-reduce/3-lists^foldl/2-0-"/3
有什么问题?
答案 0 :(得分:1)
解决问题只是一个很小的改变。
您尝试使用[foo | bar]
表示法将元素添加到列表中。 <{1}}必须是列表,而bar
是单个项目。
将您的foo
更改为element
并完成。
[element]