Когда использовать stylesheet_pack_tag вместо stylesheet_link_tag с Rails 6 - PullRequest
1 голос
/ 01 марта 2020

При создании нового проекта rails с Rails 6 создается приложение. html .erb с stylesheet_link_tag для загрузки CSS и javascript_pack_tag для javascript файлов.

Теперь рельсы 6 также предоставляют a stylesheet_pack_tag, поэтому мой вопрос, когда его использовать? И если мы его используем, нужно ли нам добавлять все CSS файлы в папку app / javascript?

Как лучше всего загружать css, изображения с помощью rails 6 и webpacker?

1 Ответ

1 голос
/ 04 марта 2020

Вам следует использовать stylesheet_pack_tag, если вы импортируете любой CSS в Webpack И если вы включили extract_css: true для любой среды в config/webpacker.yml.

Учитывая следующую структуру каталогов:

app/
  javascript/
    packs/
      application.js
    styles/
      site.css

И следующий код в application.js:

import '../styles/site.css'

Вы бы использовали <%= stylesheet_pack_tag 'application' %> по вашему мнению, т.е. имя таблицы стилей совпадает с именем пакета.

На этом этапе я также рекомендую переименовать app/javascript во что-то вроде app/frontend. Итак, ключ меняется в config/webpacker.yml:

source_path: app/frontend
extract_css: true
app/
  frontend/
    packs/
      application.js
    styles/
      site.css
...