Ошибка переключения с grunt compass на libsass
Я работаю над переходом от grunt-contrib-compass к grunt-sass. Я вижу, что компилятор libsass не удается выполнить некоторые операции импорта в файле main.scss.
Вот main.scss
@import "breakpoint";
@import "compass/css3";
@import "compass/css3/user-interface";
@import "compass/css3/transform";
@import "compass/utilities/general/clearfix";
А вот ошибка, возникающая при запуске задачи sass:
file to import not found or unreadable: breakpoint
Current dir: example/styles/
Line 1 Column 9 example/styles/main.scss
Кто-нибудь знает, как переключиться на libsass с компаса, знает, есть ли эквиваленты для этих импортов, которые я мог бы добавить в качестве замены?
1 ответ
Вам необходимо обновить путь импорта для breakpoint
указать, где _breakpoint.scss
расположен.
grunt-contrib-compass имеет importPath
вариант (например, importPath: '/bower_components'
,) который
Делает файлы в указанной папке доступными для поиска по директиве Sass @import
Поскольку он был удален из вашего файла gruntfile, теперь вы должны использовать полный путь для его импорта:
@import "/bower_components/breakpoint/breakpoint";
Редактировать: libsass имеет похожую опцию 'loadPath', которая принимает массив путей для поиска файлов в @import.
grunt.initConfig({
libsass: {
options: {
loadPath: ['my/load/path']
},
files: {[
{
expand: true,
cwd: 'my/src/dir',
src: ['**/*.scss'],
dest: 'dist',
ext: '.css'
}
]},
}});
Ваш новый конфиг для libsass будет включать
Если вы решите не делать этого, вам нужно будет установить точку останова глобально, как это было сделано для компаса.
gem "breakpoint", "~>2.4.0"