我正在将我的rails应用程序迁移到phoenix框架。
我添加了一些javascript(比如some.js
)和css文件到web/static/js
和web/static/css
目录。
<%= static_path(@conn, "/js/some.js") %>
首页page/index.html.eex
不起作用。它引发了异常(dev env):
Phoenix.Router.NoRouteError at GET /static/js/some.js
no route found for GET /static/js/some.js (VisualTrader.Router)
如果我some.js
复制到priv/static/js
目录,它就起作用了。那么我错过了什么?我认为资产管道的工作方式类似于 rails 中的管道,它会自动预编译资源。
下面列出了我的凤凰框架环境:
长生不老药版
elixir -v Erlang/OTP 18 [erts-7.1] [source] [64-bit] [smp:4:4] [async-threads:10] [hipe] [kernel-poll:false] Elixir 1.3.0-dev (187f4f8)
凤凰版
defp deps do [{:phoenix, "~> 1.1.2"}, ...
如果要包含要预编译的 Javascript 文件,则需要添加以下代码行。
将 Javascript 文件添加到web/static/js
目录中。
在web/static/js/app.js
包含您的文件
import "./some-file"