Roots Sage 9 - ошибка построения возврата продукции на sass mixin с пряжей

Создание темы с помощью Roots Sage для WordPress.

Попытка запустить простой миксин сетчатки:

    @mixin imgRetina($image, $extension, $width, $height) {
      background: url($image + '.' + $extension) no-repeat;
      width: $width;
      height: $height;
    @media (min--moz-device-pixel-ratio: 1.3),
       (-o-min-device-pixel-ratio: 2.6/2),
       (-webkit-min-device-pixel-ratio: 1.3),
       (min-device-pixel-ratio: 1.3),
       (min-resolution: 1.3dppx) {     
            background-image: url($image + '-2x' + '.' + $extension) no-repeat;
            background-size: $width $height;
     }
    }

и включить его в класс:

@include imgRetina('../assets/images/logo', png, 370px, 115px);

на yarn run start он упаковывает файл и доступен в браузере. Если я попробую и yarn run build:production Я получаю следующую ошибку:

Ошибка сборки модуля: ModuleNotFoundError: Модуль не найден: Ошибка: Не удается разрешить '../assets/images/test-logo-2x.png'

есть идеи?

1 ответ

Структура карты изменяется при создании для производства и требует более глубокого поиска.

@include imgRetina('../assets/images/logo', png, 370px, 115px);

должно быть:

@include imgRetina('../../assets/images/logo', png, 370px, 115px);

Webpack должен преобразовывать эти изображения нормально при запуске часов пряжи.

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