Phoenix Code_Reloader是否仅重新加载Elixir代码?

Ono*_*cci 6 elixir phoenix-framework

这是由于其他人问的问题.

查看Phoenix.CodeReloader的文档,看起来这只是重新加载Elixir代码.那是对的吗?如果是这样,phoenix_live_reload会做什么?live reload是否也负责重新加载静态页面和/或JS资源?

我只想了解这两个设置之间的区别,在哪个用例中使用另一个是合适的.

Gaz*_*ler 11

Phoenix.CodeReloader负责重新加载web目录中的代码(lib从Phoenix 1.2开始).这意味着如果您在Web中更改某些内容(例如控制器),则会重新加载Elixir代码并在下次请求时使用.您可以Endpoint在非elixir代码中指定外部观察者(例如早午餐或网络包).

phoenix_live_reload项目添加了一个插件,它通过与服务器的WebSocket连接将一些JavaScript注入到您的页面中.当您在配置中为live_reload(默认情况下JavaScript,样式表,模板和视图)更改任何内容时,将重新加载页面以响应通过WebSocket发送的消息.如果更改为Elixir文件,则重新加载页面时将重新编译并提供服务.如果它是JavaScript或CSS,那么它将由观察者处理(默认情况下是早午餐.)