だからここに私がページにhtmlをレンダリングするejsでforEachを実行しようとしている私の問題があります。これは、ejsforEachループのストアページです。
<% include _includes/header.ejs %>
<div class="container">
<% cards.forEach( card => { %>
<% include('_includes/cards.ejs', card) %>
<% }) %>
</div>
<% include _includes/footer.ejs %>
これがcards.ejsファイルです
<div class="card" style="width: 18rem;">
<img class="card-img-top" src='' alt="Card image cap">
<div class="card-body">
<h5 class="card-title"><%= titleCard %></h5>
<p class="card-text"><%= desc %></p>
<a href="#" class="btn btn-primary">Go somewhere</a>
</div>
</div>
これがストアページのエクスプレスコードです
app.get('/store', function(req, res) {
res.render('store', {
user: req.user,
title: 'Store'});
});
そして最後にこれ
cards = [
{
titleCard: 'title 1',
desc: 'just some text'
},
{
titleCard: 'title 1',
desc: 'just some text'
},
{
titleCard: 'title 1',
desc: 'just some text'
},
]
私は複数のことを試みましたが、カードが定義されていないというエラーが常に発生します。これはどこに置くの?私はこれについていくつかの助けを本当にいただければ幸いです!
に渡すcards
必要がありres.render()
ます。あなたはこのようにそうすることができます:
app.get('/store', function(req, res) {
res.render('store', {
user: req.user,
title: 'Store',
cards: cards
});
});
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加