Можно ли получить доступ к модулю из файла haml? - PullRequest
0 голосов
/ 22 марта 2019

Я хотел бы создать сортировку моих помощников по подмодулям, чтобы сделать код чище.Например, я хотел бы реализовать что-то вроде этого:

= UI.spawn_component(UI.alert, UI.error, "message")

Я уже пытался просто создать модуль в моем вспомогательном модуле, как это:

module StyleguideHelper
  module UI
    def spawn_component(user, type)
      return user
    end
  end
end

И я также пыталсясоздать модуль в другом файле и потребовать его из моего вспомогательного файла.Оба из них не работали.

1 Ответ

1 голос
/ 22 марта 2019

Сначала убедитесь, что файл имеет правильное имя, чтобы автозагрузка работала правильно. Если модуль называется StyleguideHelper, тогда файл должен называться styleguide_helper.rb. Я бы поместил этот файл в app/helpers, если вы не настроили lib для автозагрузки. Определите ваши модули в этом файле следующим образом:

module StyleguideHelper
  module UI
    def self.spawn_component(user, type)
      return user
    end
  end
end

После этого вы сможете использовать помощника в своем представлении следующим образом:

= StyleguideHelper::UI.spawn_component(user, type)
...