2016-06-25 12 views
0

У меня есть SASS файл: sitemap.scssЧто может заставить sass-файл нарушить компиляцию из-за разрыва строки?

Он содержит только следующую (в настоящее время):

.hero { 
    height: 600px; 
    background: none; 
} 

Я использую глотку-дерзость, который имеет, до сих пор, составленный мой Sass прекрасно.

Ошибка вывода при компиляции этого файла читается как например:

Error in plugin 'gulp-sass' 
Message: 
    assets/styles/source/components/sub-pages/sitemap.scss 
Error: Invalid CSS after ".hero {": expected "}", was "{" 
     on line 1 of assets/styles/source/components/sub-pages/sitemap.scss 
>> .hero { { 
    -------^ 

Details: 
    formatted: Error: Invalid CSS after ".hero {": expected "}", was "{" 
     on line 1 of assets/styles/source/components/sub-pages/sitemap.scss 
>> .hero { { 
    -------^ 

    column: 8 
    line: 1 
    file: /Users/dvasquez/Sites/workspace/Development/branch3/site.com/assets/styles/source/components/sub-pages/sitemap.scss 
    status: 1 
    messageFormatted: assets/styles/source/components/sub-pages/sitemap.scss 
Error: Invalid CSS after ".hero {": expected "}", was "{" 
     on line 1 of assets/styles/source/components/sub-pages/sitemap.scss 
>> .hero { { 
    -------^ 

    messageOriginal: Invalid CSS after ".hero {": expected "}", was "{" 
    relativePath: assets/styles/source/components/sub-pages/sitemap.scss 

Теперь вот где он получает странно. Если я возьму тот же самый файл sass и напишу его вот так:

.hero { height: 600px; background: none; } 

Он компилируется просто отлично.

Я предположил, что это может быть проблема с кодировкой, поэтому я удалил файл и создал новый. Тот же вопрос. Кто-нибудь сталкивался с чем-то подобным раньше? У меня есть много других sass-файлов в моем проекте, и никто из них не демонстрирует такого поведения.

Кроме того, в дополнение к этому, я также попытался импортировать частичную часть, которая включала в себя 4-строчную версию файла, и это тоже сработало.

Любые идеи были бы весьма признательны.

+0

Вы пробовали удалить линию и повторно набирать ее (не вырезать/вставить стиль)? Сообщения об ошибках, как представляется, указывают на наличие двух '' 'в строке. Вы можете использовать шестнадцатеричный редактор для проверки любых необычных символов. – kicken

+3

Похоже, вы компилируете SAD с отступом, а не SCSS. SASS не использует скобки, но вместо этого использует отступы, поэтому, когда вы включаете скобки, он добавляет вторую скобку и бросает ошибку. Когда вы кладете его на одну строку, он распознает его как стандартный CSS. Проверьте настройки глотки и посмотрите, есть ли у вас отступы sass, равные true. – rachel

+0

Kicken, я дошел до того, что удалил весь файл, но да, я протестировал его, удалив строку и переписав ее. Такая же ошибка. Рэйчел, спасибо за это предложение, но я предполагаю, что если бы он составлял отступы SASS, тогда все мои другие scss-файлы будут терпеть неудачу в массовом порядке. Все остальное компилируется просто отлично (мы говорим о 50-100 других файлах scss с сотнями строк кода). Я попробую ваше предложение в понедельник, однако, на всякий случай. Это действительно смешно. Раньше я никогда не испытывал такого рода проблемы. –

ответ

1

Как уже упоминалось в @rachel's comment, попробуйте установить indentedSyntax: false в конфигурацию вашего gulp-sass. У меня были такие же ошибки, и это сработало для меня!

"sass": { 
    "indentedSyntax": false, //Set to false to allow standard SCSS syntax using braces. 
    "includePaths": [ 
    "./node_modules/normalize.css" 
    ] 
}