Jade неожиданный токен "indent"
Я пытаюсь запустить панель sparklesare-dashboard, которая является открытым исходным кодом. До сих пор у меня появилось много ошибок, потому что я не знаком с используемой в ней технологией. Итак, на этот раз, когда я запустил app.js из командной строки с помощью команды node, я получил эту ошибку.
Warning: missing space before text for line 20 of jade file "D:\Imports\sparkles
hare-dashboard/views/createFirstUser.jade"
Error: D:\Imports\sparkleshare-dashboard/views/createFirstUser.jade:21
19| script(type="text/javascript")
20| $("#login").focus(function()
{
> 21| $("#loginlabel").fadeOut();
22| });
23| $("#login").blur(function() {
24| if ($("#login").val().length == 0) {
unexpected token "indent"
at Parser.parseExpr (D:\Imports\sparkleshare-dashboard\node_modules\jade\lib
\parser.js:229:15)
at Parser.block (D:\Imports\sparkleshare-dashboard\node_modules\jade\lib\par
ser.js:689:25)
at Parser.tag (D:\Imports\sparkleshare-dashboard\node_modules\jade\lib\parse
r.js:806:26)
at Parser.parseTag (D:\Imports\sparkleshare-dashboard\node_modules\jade\lib\
parser.js:719:17)
at Parser.parseExpr (D:\Imports\sparkleshare-dashboard\node_modules\jade\lib
\parser.js:188:21)
at Parser.block (D:\Imports\sparkleshare-dashboard\node_modules\jade\lib\par
ser.js:689:25)
at Parser.tag (D:\Imports\sparkleshare-dashboard\node_modules\jade\lib\parse
r.js:806:26)
at Parser.parseTag (D:\Imports\sparkleshare-dashboard\node_modules\jade\lib\
parser.js:719:17)
at Parser.parseExpr (D:\Imports\sparkleshare-dashboard\node_modules\jade\lib
\parser.js:188:21)
at Parser.parseExpr (D:\Imports\sparkleshare-dashboard\node_modules\jade\lib
\parser.js:227:21)
Ответы
Ответ 1
У вас есть синтаксическая ошибка в коде, вы просто пропустили точку, и это вызывает другую ошибку, см. мой фиксированный пример в конце:
script(type="text/javascript")
$("#login").focus(function(){
$("#loginlabel").fadeOut();
});
предложит ошибку Unexpected token "indent"
. Поскольку Джейд видит ваш $("#loginlabel").fadeOut();
как еще одну строку кода, и для этой строки у Jade есть неправильный отступ.
Обычно эти ошибки "indent"
всегда указывают, в конце концов, на неправильный отступ.
Итак, чтобы избавиться от этой ошибки, просто добавьте точку в конец тега script
и проясните, что это часть отверстия, из которой нет Jade-кода, например:
script(type="text/javascript").
$("#login").focus(function() {
$("#loginlabel").fadeOut();
});
Это (см. эту точку) даст вам следующий вывод HTML:
<script type="text/javascript">
$("#login").focus(function() {
$("#loginlabel").fadeOut();
});
</script>
Ответ 2
Правильный синтаксис:
script.
document.location = "https://google.com"