Синтаксическая ошибка при попытке создать пустой список S CSS - PullRequest
1 голос
/ 11 июля 2020

Я просто не могу понять, что не так с приведенным ниже кодом sass. Это не код, который я написал, но, тем не менее, он мне кажется правильным.

Это строка, о которой идет речь:

$selectors: ();

Разве это не правильный способ создания пустой список в s css?

Вот код.

@function _modifies-element($modified-elements...) {

    $inside-check: _should-be-called-within('block', 'modifier', 'state', 'theme');
    $outside-check: _should-not-be-called-within('element');

    // Return false in case error throwing is disabled
    @if $inside-check == false or $outside-check == false {
        @return false;
    }

    $selectors: ();

    @each $element in $modified-elements {
        $element: map-get(map-get($_bem-current-context, 'block'), 'selector') + $bem-element-separator + $element;
        $selectors: append($selectors, $element, 'comma');
    }

    $s: &; // Workaround for libsass
    $block: selector-append($s...);

    $selector: selector-nest($block, '>', $selectors);

    $set-current: set-current-context('modifies-element', $modified-elements, $selector);

    @return $selector;
}

Вот ошибка:

Invalid CSS after '"': expected selector, was '".o-block__inner"'

это .o-block__inner не даже в файле!

Любая помощь приветствуется

1 Ответ

0 голосов
/ 16 июля 2020

Я не знаю, почему это происходит, но столкнулся с той же проблемой при использовании sass-bem-utils. Проблема заключается в подчеркивании в именах функций при использовании dart-sass вместо node-sass. Попробуйте переименовать _modifies-element() в modifies-element() и так далее

...