Я получаю ошибку "EOS" со стилусом при компиляции с помощью grunt-contrib-stylus

Я продолжаю получать это странное сообщение об ошибке при компиляции. Очень сложно отлаживать. (Кстати: непрозрачность в примере это миксин)

Но я застрял на

> 59| .red { opacity 0.4 }

expected "indent", got "eos"

я пробовал

.red { opacity(0.4) }
.red { opacity(0.4); }

и ничего.

6 ответов

Решение

Проблема А

Проблема в том, что по некоторым синтаксическим причинам стилус не разрешает миксины в селекторе

Решение (я)

  1. это использовать несколько строк

    .red {
         opacity(0.4);
    }
    
  2. добавьте фиктивное свойство (убедитесь, что оно не влияет на ваш стиль)

    .red { opacity(0.4); zoom:1; }
    

Проблема Б

Другая проблема была со стилями сброса, без новой линии между ними.

body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none} ...

Решение

Чтобы поставить каждый стиль на отдельных линиях:

body{line-height:1}
ol,ul{list-style:none}
blockquote,q{quotes:none}
...

Очень очень странные проблемы и даже более странное решение:P

Надеюсь, что это сэкономит ваше время (потому что я потратил много времени на это:().

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

Я обнаружил, что это было вызвано ошибочной фигурной скобкой, оставленной при разговоре css или mixin

myMixin(var = 1){  <--- nooooooo
  color red
  etc etc

Для всех пользователей Vi(m): также может быть вызвано

$width--s = 24rem:wq

(последние 3 символа)

У меня была эта проблема, и (примерно через 30 минут) я понял, что это была дополнительная открывающая скобка, которую вставила моя IDE - ясно, что я должен был наблюдать более внимательно! Я бы посоветовал внимательно посмотреть на все ваши изменения в git (или что у вас) и убедиться, что у вас нет двойных открывающих скобок:

.class-name-of-greatness {
{ 
   color: blue;
   border: gold
}

У меня просто была такая же проблема. Как оказалось, эта проблема также может быть вызвана, если у вас есть два последовательных смежных хэша при определении цвета:

color #FFF  <- good

color ##FFF  <- easy to miss, will cause very unhelpful 'eos' message at file end
Другие вопросы по тегам