Невозможно использовать миксины Susy в моем проекте
Я перемещаю существующий код в новую конфигурацию, основанную на webpack+postCSS.
Я использую компас и Сьюзи.
Нет проблем с компасным миксином. Однако с Сьюзи я не могу использовать миксин. например, если я пытаюсь использовать контейнер mixin, я получаю следующую ошибку:
No mixin named container
Я понятия не имею о том, что вызывает эту проблему. У меня нет его с компасом.
Это моя текущая ситуация:
/* style.scss */
@import "compass";
@import "~susy/sass/susy";
.nav{
@include container(300px);
border: 1px solid;
}
/* webpack.config.js */
{ test: /\.s(a|c)ss$/,
use: [
'babel-loader', 'raw-loader', 'postcss-loader',
{ loader: 'sass-loader',
options: {
includePaths: ['node_modules', 'node_modules/compass-mixins/*']
.map((d) => path.join(__dirname, d))
.map((g) => glob.sync(g))
.reduce((a, c) => a.concat(c), [])
}
}
]
}
/* postcss.config.js */
module.exports = {
plugins: [
require('postcss-easy-import')({prefix: '_',extensions:['.css','.scss']}),
require('autoprefixer')(),
]
}
Спасибо за помощь
2 ответа
Какую версию Susy вы используете?
Susy 3.0 удалил все миксины и имеет другие серьезные изменения. Вы можете прочитать больше в обновленных справочных документах или вводной статье.
эта проблема связана с версией susy, которую вы используете. mixin взят из susy 2 и удален из susy 3.
Если вы установили susy через npm. вам нужно изменить версию susy в файле package.json на «susy»: «<3.0.0», затем выполните эту команду: npm install susy.