Приложение запускается в эликсире

Из документов:

def application do
  [mod: {MyApp, []}]
end

Часто приложение определяет дерево контроля, которое должно запускаться и останавливаться при запуске и остановке приложения. Для этого нам нужно определить обратный вызов модуля приложения. Первым шагом является определение обратного вызова модуля в определении приложения в файле mix.exs:

Но из документации там неясно, каков список (второй аргумент) после MyApp.

Должен ли это быть список моих модулей, которые реализуют GenServer Поведение?

1 ответ

Решение

Второе значение в кортеже - это аргумент, который передается MyApp.start/2 как второй аргумент.

Если вы сделаете это:

def application do
  [mod: {MyApp, [:foo, :bar]}]
end

а затем в MyApp.start, проверьте второй аргумент args по умолчанию mix генератор):

def start(_type, args) do
    IO.inspect args
    ...
end

а потом беги mix, вот увидишь:

$ mix
[:foo, :bar]
Другие вопросы по тегам