Как можно конфиг перекомпилировать в фениксе - PullRequest
0 голосов
/ 11 сентября 2018

Я использую Phoenix для создания сервера и использую редактор VSCode.

Когда я запускаю сервер: mix phx.server, и у меня меняется код, он не перекомпилируется, я должен выключиться и снова запустить,

Должно ли быть где-то установлено расширение или конфигурация, которые могут автоматически перекомпилироваться?

file dev.exs

config :jwtuser, Jwtuser.Endpoint,
  http: [port: 5000],
  debug_errors: true,
  code_reloader: true,
  check_origin: false,
  watchers: [node: ["node_modules/brunch/bin/brunch", "watch", "--stdin",
                    cd: Path.expand("../assets", __DIR__)]]

в mix.exs

def project do
    [
      app: :jwtuser,
      version: "0.0.1",
      elixir: "~> 1.4",
      elixirc_paths: elixirc_paths(Mix.env),
      compilers: [:phoenix, :gettext] ++ Mix.compilers,
      start_permanent: Mix.env == :prod,
      aliases: aliases(),
      deps: deps(),
      erlc_options: erlc_options()
    ]
  end

Ответы [ 2 ]

0 голосов
/ 11 сентября 2018

Если вы хотите видеть изменения во время разработки, вы можете запустить сервер в сеансе IEx с:

iex -S mix phx.server

А затем используйте

IEx.Helpers.recompile

Чтобы перекомпилировать ваш код.

0 голосов
/ 11 сентября 2018

Нет, вам не нужно никакого расширения, brunch делает это из коробки.Убедитесь, что вы не использовали опцию --no-brunch при создании каркаса проекта, убедитесь, что у вас скомпилированы ресурсы, как показано здесь , и убедитесь, что у вас включена опция watch в вашем assets/package.json:

{
  "repository": {},
  "license": "MIT",
  "scripts": {
    "deploy": "brunch build --production",
    "watch": "brunch watch --stdin"
  },
  "dependencies": {
    "phoenix": "file:../deps/phoenix",
    "phoenix_html": "file:../deps/phoenix_html"
  },
  "devDependencies": {
    "babel-brunch": "6.1.1",
    "brunch": "2.10.9",
    "clean-css-brunch": "2.10.0",
    "uglify-js-brunch": "2.10.0"
  }
}
...