Как я могу получить ejs для работы с мангуста?

75
8

У меня есть маршрут, на котором все клиенты, и я пытаюсь передать клиенту ejs для их рендеринга. Я получаю следующую ошибку:

Express
500 SyntaxError: Unexpected token {
at Object.Function (unknown source)
at exports.compile (/Users/sm/Desktop/AttApp/node_modules/ejs/lib/ejs.js:234:12)
at Object.exports.render (/Users/sm/Desktop/AttApp/node_modules/ejs/lib/ejs.js:273:10)
at View.exports.renderFile [as engine] (/Users/sm/Desktop/AttApp/node_modules/ejs/lib/ejs.js:303:22)
at View.render (/Users/sm/Desktop/AttApp/node_modules/express/lib/view.js:75:8)
at Function.app.render (/Users/sm/Desktop/AttApp/node_modules/express/lib/application.js:503:10)
at ServerResponse.res.render [as partial] (/Users/sm/Desktop/AttApp/node_modules/express/lib/response.js:721:7)
at ServerResponse.module.exports.res.render (/Users/sm/Desktop/AttApp/node_modules/express-partials/index.js:55:9)
at ServerResponse.res.renderPjax (/Users/sm/Desktop/AttApp/node_modules/express-pjax/pjax.js:17:11)
at Promise. (/Users/sm/Desktop/AttApp/app.js:61:17)

Вот мой маршрут:

app.get( '/clients', function( req, res ) {
return ClientModel.find( function( err, clients ) {
if( !err ) {
res.renderPjax('clients/clients.ejs', {
title: 'Clients Page',
clients: clients

});

console.log(clients);
} else {
return console.log( err );
}
});
});

И вот мой взгляд client.ejs:

<input type="text" class="table-search" id="search" autocomplete="off" placeholder="Search Clients…">
<table class="table" id="tblData">
<thead>
<tr>
<th>Client Name</th>
<th>Title</th>
</tr>
</thead>
<tbody id="tblDataBody">
<% clients.forEach(fucntion(client){ %>

<tr>
<td><a href="http://lar4.loc/clients/<%= client._id %>"><%= client.first_name %></a></td>
<td>Title</td>
</tr>

<% }) %>

</tbody>
</table>

Как я могу заставить шаблон ejs циклически обрабатывать данные клиента и отображать его? Я использую mongoose для хранения и получения данных. Я также использую express.js.

спросил(а) 2021-01-19T16:33:10+03:00 2 месяца, 3 недели назад
1
Решение
87

Я думаю, что это связано с ошибкой в этой строке

<% clients.forEach(fucntion(client){ %>

Поскольку вы неправильно задали function она не может учитывать {

ответил(а) 2021-01-19T16:33:10+03:00 2 месяца, 3 недели назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема