Невозможно использовать миксины 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.

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