I dieses Innen korrekt ein Argument übergeben "web/templates/Modul/headerHC.html.eex":kann nicht in einem Template habe
<%= for element <- MyProject.PageView.Recursion.buildElements(@header_linkNumber),1) do %>
<%= element %>
<% end %>
Dann verwende ich diese Komponente in „web/layout/HC .html.eex ":
<%= render FabricaASA.ModuleView, "headerHC.html", conn: @conn,
header_class: nil,
header_linkNumber: "3"
%>
Endlich habe ich definiert inside "Web/views/page_view.ex":
defmodule Recursion do
def buildElements(n) when n <= 1 do
[n]
end
def buildElements(n) do
[n | buildElements(n - 1)]
end
end
Das Problem ist, dass ich diesen Fehler bin immer:
bad argument in arithmetic expression
zu dieser Linie zeigt:
def buildElements(n) when n <= 1 do
Dies geschieht, wenn ich @header_linkNumber
statt einer Nummer wie <%= for element <- MyProject.PageView.Recursion.buildElements(2),1) do %>
einfügen habe ich versucht, bereits @MyProject.ModuleView.header_linkNumber
stattdessen zu verwenden, aber dann bekomme ich diesen Fehler:
cannot set attribute @__aliases__ inside function/macro
Sie header_linkNumber als Argument für buildElements verwenden Sie? Wenn ja, sollten Sie "3" und nicht "3" ' – Gazler
richtig übergeben! Ich habe die Schnur dort vermisst ... Danke Gazler (mach das bitte eine Antwort). –