2016-03-20 6 views
5

Как импортировать файл .scss.erb в Middleman 4?Как импортировать файл .scss.erb в middleman4?

Я просто повышен с Middleman 3 до 4. Я думаю это мой последний вопрос ...

У меня есть all.css.scss файл, который выглядит следующим образом:

@charset "utf-8"; 

@import "settings"; 
@import "imports"; 
@import "base"; 
@import "signature_pad" 

Все файлы импорта за исключением импорта.

Разница с settings, что это _imports.scss.erb

Тогда, когда я пытаюсь загрузить all.css я получаю это:

Error: File to import not found or unreadable: imports. 
     Load paths: 
     /Users/myMyserId/apps/projectName/source/assets/css 
     /Users/myUserId/.rvm/gems/ruby-2.0.0-p451/gems/compass-core-1.0.3/stylesheets 
     Compass::SpriteImporter 
     /Users/myUserId/apps/projectName/source/assets/css 
     /Users/myUserId/.rvm/gems/ruby-2.0.0-p451/gems/compass-core-1.0.3/stylesheets 
     Compass::SpriteImporter 
     /Users/myUserId/apps/projectName/source/assets/css 
     /Users/myUserId/.rvm/gems/ruby-2.0.0-p451/gems/compass-core-1.0.3/stylesheets 
     Compass::SpriteImporter 
     on line 4 of /Users/myUserId/apps/projectName/source/assets/css/all.css.scss 

Я думаю, что проблема в том, что эрб не обрабатывает файл перед тем, как сделать его .scss.

ответ

1

Добавление звездочек за this forum post привело к тому, что импорт работал так, как раньше.

В Gemfile, добавьте Звездочек и через рельсы-активы блок с gemfiles выбранного из шага 1:

# Gemfile 
gem 'middleman-sprockets', '4.0.0.rc.3' 

source 'https://rails-assets.org' do 
    gem 'rails-assets-bootstrap-autohidingnavbar', '1.0.0' 
    gem 'rails-assets-jquery', '2.1.1' 
    gem 'rails-assets-slick.js', '1.5.7' 
end 

В вашем config.rb, добавьте следующий блок для того, чтобы трубопровод активов и добавить RailsAssets драгоценных камней Ваш путь загрузки:

# config.rb 
# General configuration 
activate :sprockets 

if defined? RailsAssets 
    RailsAssets.load_paths.each do |path| 
    sprockets.append_path path 
    end 
end 
6

Разница с параметрами является то, что это _imports.scss.erb

Это ваш вопрос. Миддлман сам по себе не трогает ни с чем ведущим подчеркиванием. Файлы .scss обрабатываются, потому что это SASS делает работу.

Решение, которое я использую (пока не нахожу другое), заключается в том, чтобы построить второй файл css и просто включить его в мой макет.

В вашем случае вы можете попробовать удалить символ подчеркивания; без суффикса .css он не должен включаться в вывод.

2

Вот пример, чтобы получить его работу:

// all.css.scss.erb 

<%= partial './_settings.scss' %> 

// rest of css… 

с настройками-файла,

  • имени _settings.scss.erb
  • расположен как родственный файла в all.css.scss и
  • она может затем введите код erb! :)

Тем не менее, я настоятельно рекомендую смотреть в функции внешнего трубопровода в Middleman 4. Это очень мощный и позволяет лучше обработки SASS/SCSS.

 Смежные вопросы

  • Нет связанных вопросов^_^