Красная часть - это подсветка синтаксиса, сообщающая, что на основании правил, изложенных в определении синтаксиса для любого языка или типа файла, который вы используете, текст, который здесь отображается, недопустим. Это то, что обеспечивает используемое определение синтаксиса, поэтому оно отображается не во всех типах файлов (оно зависит от автора синтаксиса) и будет происходить независимо от того, какие сторонние пакеты, такие как Linters, вы могли установить.
Строка кода, которая делает это:
fileName = e.target.value.split('\').pop();
Подсветка синтаксиса дает вам 3 различных подсказки о том, что происходит не так (а здесь, в SO, подсветка синтаксиса дает похожие подсказки):
- Конец строки - отвратительный красный цвет; это означает, что эта часть строки (все после фактического текста) каким-то образом разбита
- До красного текста текст
).pop();
является желтым, что означает, что это строка, но это не так похоже, что это вообще должна быть строка (технически вы можете видеть, что она того же цвета, что и строка в строке выше, но не того же цвета, что и другие вызовы функций, такие как split()
) - The
\'
последовательность фиолетового цвета, что означает, что это интерпретируется как character escape
(здесь мы можем видеть, что цвет этого текста отличается от того, что мы ожидаем, что содержимое строки будет выглядеть).
Взятые вместе, \'
не заканчивает строку в аргументе до split()
, как вы думаете; строковая константа продолжается там до конца строки, и поскольку конец строки достигается без закрытия строки, эта строка прерывается.
Итак, вам нужно исправить вызов split()
аргумент, чтобы быть допустимой строкой. Возможно, вы имели в виду '\\'
(вы хотите разделить строку при обратной косой черте) или '\''
(вы хотите разделить строку в одинарных кавычках).