Phoenix.Router.NoRouteError 资产

Phoenix.Router.NoRouteError for assets

在 elixir 中,我尝试使用此命令在 umbrella 下创建项目

mix phx.new my_project --umbrella

在 apps 目录中尝试使用此命令安装 phoenix 项目

mix phx.new phx_project --no-ecto

并尝试在 assets 目录下添加具有新结构的资产和 bar.css 的新文件,并在前端使用它:

<%= Routes.static_path(@conn, "/ja/bee/foo/bar.css") %>

我什么也没找到。

但是有了这个

<%= Routes.static_path(@conn, "/css/app.css") %>

没关系。

在您的 endpoint.ex 文件中,您将有一个类似于

的部分
  plug Plug.Static,
    at: "/", from: :attendance_web, gzip: false,
    only: ~w(css fonts images js favicon.ico robots.txt)

您需要将 ja 目录添加到 :only 键的列表中。然后确保你的 ja 目录在你的 css 目录旁边。

我试图将我的资产(js、css、图片)放在assets目录下,但真正的地方,它实际上是在assets/static目录下。我个人认为这不是一个好地方为什么?因为在 assets 目录中我们有像 css、js 目录这样的目录。