可以在 Phoenix 禁用 CodeReloader 吗?

Ton*_*ale 4 elixir phoenix-framework distillery

(模式CodeReloaderdev)正在使用Mix.Config. 使用 distillery 版本时会失败,dev_mode因为mix在版本中不可用。

是否可以CodeReloader在 Phoenix 应用程序中完全禁用,以便我的应用程序不会在dev_mode发布时无法启动?

Jus*_*ood 5

在您的应用程序中,/config/dev.exs您将有类似的内容

config :my_app_web, MyApp.Web.Endpoint,
  http: [port: 4000],
  debug_errors: true,
  code_reloader: true,
  check_origin: false,
  watchers: [node: ["node_modules/brunch/bin/brunch", "watch", "--stdin",
                    cd: Path.expand("../assets", __DIR__)]]
Run Code Online (Sandbox Code Playgroud)

只需更改code_reloader: truecode_reloader: false. 或者您可以从您的应用程序中删除以下代码MyApp.Endpoint

if code_reloading? do
  socket "/phoenix/live_reload/socket", Phoenix.LiveReloader.Socket
  plug Phoenix.LiveReloader
  plug Phoenix.CodeReloader
end
Run Code Online (Sandbox Code Playgroud)