Express.js, Node.js Jade - Siguiendo los tutoriales de ExpressJs.com y obtener errores

StackOverflow https://stackoverflow.com/questions/5847589

  •  27-10-2019
  •  | 
  •  

Pregunta

Bueno, estoy tratando de ingresar a Node.js / Express.js: sin embargo, he tenido algunos problemas pasando por la screencast, el primer problema, ahora resuelto, fue bastante obvio cuando fue visto (Express.js, node.js jade vim).

Sin embargo, ahora recibo los siguientes errores:

Express
500 SyntaxError: Unexpected identifier

    * at Object.Function (unknown source)
    * at Object.compile (/usr/local/lib/node/.npm/jade/0.10.6/package/lib/jade.js:230:10)
    * at ServerResponse._render (/usr/local/lib/node/.npm/express/2.3.2/package/lib/view.js:368:22)
    * at ServerResponse.render (/usr/local/lib/node/.npm/express/2.3.2/package/lib/view.js:234:17)
    * at Object. (/home/duncan/helloExpress/app.js:46:7)
    * at nextMiddleware (/usr/local/lib/node/.npm/express/2.3.2/package/lib/router/index.js:139:34)
    * at param (/usr/local/lib/node/.npm/express/2.3.2/package/lib/router/index.js:147:16)
    * at pass (/usr/local/lib/node/.npm/express/2.3.2/package/lib/router/index.js:155:10)
    * at Object.router [as handle] (/usr/local/lib/node/.npm/express/2.3.2/package/lib/router/index.js:161:6)
    * at next (/usr/local/lib/node/.npm/connect/1.4.0/package/lib/http.js:204:15)

Mi código app.js es el siguiente: declara la matriz de objetos de los usuarios

var users = [
    { name: 'Duncan',   email: 'duncan@email.com'},
    { name: 'Bob',  email: 'bob@email.com'}
];

y ... el bit que llama y hace que los nuevos usuarios. Jade

app.get('/users', function(req, res){
  res.render('users', {
        users: users
  });

});

No sé si solo estoy siendo ciego hoy, pero realmente me gustaría que este ejemplo funcione.

NÓTESE BIEN. App.js 46: 7 es el char 7 'Res.render'. entre Res y Render. - Desde el mensaje de error.

El archivo ussers.jade es el siguiente:

h1 Users
ul#users
    -   each user in users
    li= user.name

Si me deshizo de: Usuario en usuarios y li = user.name

Hace que la página, tan pronto como la agrego, me da el mensaje de error anterior, y dice que hay algo mal con Res.Render ('Usuarios' - en el punto (46: 7).

PD. Estoy siguiendo el segundo tutorial aquí: http://expressjs.com/screencasts.html

Mi sangría:

[indent] - [indent] each user in users
[indent][indent] li= [indent] user.name
¿Fue útil?

Solución

Necesitas sangrar el li= user.name otro nivel de cada declaración.

Esto debería funcionar:

h1 Users
ul#users
  - each user in users
    li= user.name

Otros consejos

Estaba recibiendo este error porque en mi diseño. Jade

Yo Tuve:

html(class="no-js" lang="en")

¡Y claramente ese ^^^ spot justo ahí le falta una coma!
Jade es genial y todo, pero Wow ese mensaje de error es malo para los principiantes.

Debería haber sido:

html(class="no-js", lang="en")
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top