Приложение Rails, использующее SASS, импортирующее CSS из внешних гемов, не обрабатывающее директивы Sprockets

Я чувствую, что это должно быть относительно распространенной проблемой, но мой Google-foo до сих пор меня подводил.

У меня есть приложение Rails 4, где я использую SASS для своего CSS. У меня есть пара драгоценных камней, которые я (вынужден) использовать, которые в основном содержат CSS. Скажем, драгоценный камень C имеет index.css файл, который содержит директивы Sprockets для CSS этого драгоценного камня. Когда я @import gem-x/index мой application.css Файл будет содержать просто текст этих директив Sprockets.

Единственное решение, которое мне удалось найти, - это посмотреть на источник внешних драгоценных камней, чтобы я мог вручную @import каждый файл CSS напрямую, например

@import gem-x/file1
@import gem-x/file2
@import gem-x/file3

Это утомительно и требует от меня знания структуры активов для каждого внешнего драгоценного камня, который не предоставляет SASS для потребления напрямую.

Есть ли способ, чтобы Sprockets и конвейер активов обрабатывали index.css файлы этих внешних драгоценных камней, когда я @import их, а не просто выкладывать туда текст в мой application.css?


Редактировать:

Такое поведение, похоже, связано с серьезными изменениями в sass-rails 5+: https://github.com/rails/sass-rails/issues/297

Этой теме годовалый тё. Есть ли какие-либо обходные пути или решения в эти дни?

1 ответ

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

@Импортировать "*";

Другие вопросы по тегам