我想从视图中调用static_path来嵌入js脚本
def render("index.js", _) do
<script src="#{Conn.static_path(@conn, "/js/my_js.js")}"></script>
end
它说&#34; Conn.static_path未找到&#34;。那么它定义在哪里?
答案 0 :(得分:3)
问题标题的答案是:
MyApp.Router.Helpers.static_path
我也将在评论中回答OP发布的实际问题:
我想仅在某些页面上呈现某些js脚本。我怎么能这样做?
我会在</body>
之前将此添加到应用布局(或者您正在使用的那个布局):
...
<%= for src <- List.wrap(assigns[:scripts]) do %>
<script src="<%= static_path(@conn, src) %>"></script>
<% end %>
</body>
</html>
然后,在我想要渲染更多脚本的动作中,我将传递额外脚本列表以包括:
def foo(conn, _params) do
render conn, "foo.html", scripts: ["/js/foo.js"]
end