Как должен выглядеть правильный CSS-шаблон для рельсов?

Я делаю учебник по Rails для CSS, и мне поручили создать файл shmoogle.css.scss в app/assets/stylesheets/shmoogle.css.scss

Рядом с этим файлом находится файл application.css, который выглядит следующим образом:

/*
 * This is a manifest file that'll be compiled into application.css, which will include   
   all the files
 * listed below.
 *
 * Any CSS and SCSS file within this directory, lib/assets/stylesheets, 
   vendor/assets/stylesheets,
 * or vendor/assets/stylesheets of plugins, if any, can be referenced here using a   
   relative path.
 *
 * You're free to add application-wide styles to this file and they'll appear at the   
   bottom of the
 * compiled file so the styles you add here take precedence over styles defined in any 
   styles
 * defined in the other CSS/SCSS files in this directory. It is generally better to 
   create a new
 * file per style scope.
 *
 *= require_tree .
 *= require_self
 *= require_shmoogle
 */

Обратите внимание на строку со второй по последнюю, где мне требуется_shmoogle. Это правильно? Это должно быть закомментировано, как это?

2 ответа

require_tree . Директива будет автоматически включать все CSS-файлы в текущем каталоге, поэтому вам не нужно отдельное требование require для этого конкретного файла.

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

*= require_self
*= require load_me_first
*= require load_me_next
*= require_tree ./subfolder_to_require_next
*= require_tree .

Этот код будет включать файлы в указанном вами порядке и окончательный require_tree . потребует всего остального. Если вы не хотите включать все остальное, вы можете удалить require_tree . директива и требует все вручную.

Природа комментариев файлов манифеста ожидается. Специальные директивы (начиная с *=) вызывает особое поведение в конвейере активов. Любой код, написанный за пределами блока комментариев, будет интерпретирован как обычный код CSS и включен в require_self директивы.

Вы можете прочитать больше о файлах манифеста и директивах в Руководстве по конвейерным ресурсам активов.

Так должно быть require shmoogle, но так как вы уже делаете require_tree .это утверждение не является необходимым. require_tree требует все таблицы стилей в текущем каталоге рекурсивно.

Так что обновите свой application.css включать только:

*= require_tree .
*= require_self
Другие вопросы по тегам