如何解决无法读取ejs文件中未定义的属性“ slug”
我还很陌生,现在遇到这个错误。我看到了几个解决方案并添加了?运算符,但之后却说出了意外的令牌“。”在home.ejs中
下面是home.ejs文件
<%- include ../partials/header %> <%- include ../partials/categories-navbar%>
<!-- Top Carousel -->
<div
id="topCarousel"
class="carousel slide mb-3 mt-0 pt-0"
data-ride="carousel"
>
<ol class="carousel-indicators">
<li data-target="#topCarousel" data-slide-to="0" class="active"></li>
<li data-target="#topCarousel" data-slide-to="1"></li>
<li data-target="#topCarousel" data-slide-to="2"></li>
</ol>
<div class="carousel-inner">
<div class="carousel-item active">
<img class="d-block w-100" src="/images/slide1.jpg" alt="First slide" />
</div>
<div class="carousel-item">
<img class="d-block w-100" src="/images/slide2.jpg" alt="Second slide" />
</div>
<div class="carousel-item">
<img class="d-block w-100" src="/images/slide3.jpg" alt="Third slide" />
</div>
</div>
<a
class="carousel-control-prev"
href="#topCarousel"
role="button"
data-slide="prev"
>
<span class="carousel-control-prev-icon" aria-hidden="true"></span>
<span class="sr-only">Previous</span>
</a>
<a
class="carousel-control-next"
href="#topCarousel"
role="button"
data-slide="next"
>
<span class="carousel-control-next-icon" aria-hidden="true"></span>
<span class="sr-only">Next</span>
</a>
</div>
<!-- Store's categories section -->
<div class="container">
<h3 class="text-center mb-3 mt-4">Store's Categories</h3>
<% if (categories) { %>
<div class="row text-center m-auto">
<% for(let i=0; i<3; i++){ %>
<div class="col-lg-3 col-md-3 col-sm-12 text-center ml-2">
<a class="title-link" href="/products/<%=categories[i].slug%>">
<img src="images/dept<%=i%>.jpg" alt="category" class="circle-img" />
<h4 class="mb-3 mt-3"><%=categories[i].title%></h4>
</a>
</div>
<%} %>
<div class="col-lg-1 col-md-1 col-sm-12 text-center mx-auto">
<a href="/products">
<i class="fa fa-chevron-circle-right" aria-hidden="true"></i>
</a>
</div>
</div>
<%}%>
</div>
<hr class="gradient-style" />
<!-- Latest products slider -->
<div class="container mb-4 mt-4">
<!--Carousel Wrapper-->
<div
id="products-carousel"
class="carousel slide carousel-multi-item"
data-ride="carousel"
>
<!--Controls-->
<div class="controls-top mb-2">
<div class="row">
<div class="col-8">
<h3>Latest Products</h3>
</div>
<div class="col-4">
<div class="controls float-right hidden-xs">
<a
class="left fa fa-chevron-left btn btn"
href="#products-carousel"
data-slide="prev"
></a
><a
class="right fa fa-chevron-right btn"
href="#products-carousel"
data-slide="next"
></a>
</div>
</div>
</div>
</div>
<!--/.Controls-->
<!--Slides-->
<div class="carousel-inner" role="listbox">
<!--First slide-->
<div class="carousel-item active">
<div class="row">
<% for(let i=0; i<3; i++) { %>
<div class="col-md-4 product-index-box">
<div class="single-product d-flex flex-column h-100">
<a
class="title-link"
href="/products/<%=products[i].category.slug%>/<%=products[i]._id%>"
>
<img
src="<%= products[i].imagePath %>"
alt="Bag"
class="img-fluid"
/></a>
<div class="product-info">
<a
class="title-link"
href="/products/<%=products[i].category.slug%>/<%=products[i]._id%>"
>
<h6 class="mt-2 mb-2"><%= products[i].title %></h6></a
>
<div class="price">$<%= products[i].price %></div>
</div>
<% if(products[i].available) {%>
<a
href="/add-to-cart/<%=products[i]._id%>"
class="btn btn-block btn-secondary button-style mt-auto mb-2"
>
Add to Shopping Cart
</a>
<% } else { %>
<a
href="#"
class="btn btn-block btn-danger button-style-danger mt-2 mb-2"
>
Sold out
</a>
<%} %>
</div>
</div>
<%}%>
</div>
</div>
<!--/.First slide-->
<!--Second slide-->
<div class="carousel-item">
<div class="row">
<% for(let i=3; i<6; i++) { %>
<div class="col-md-4 product-index-box">
<div class="single-product d-flex flex-column h-100">
<a
class="title-link"
href="/products/<%=products[i].category.slug%>/<%=products[i]._id%>"
>
<img
src="<%= products[i].imagePath %>"
alt="Bag"
class="img-fluid"
/></a>
<div class="product-info">
<a
class="title-link"
href="/products/<%=products[i].category.slug%>/<%=products[i]._id%>"
>
<h6 class="mt-2 mb-2"><%= products[i].title %></h6></a
>
<div class="price">$<%= products[i].price %></div>
</div>
<% if(products[i].available) {%>
<a
href="/add-to-cart/<%=products[i]._id%>"
class="btn btn-block btn-secondary button-style mt-auto mb-2"
>
Add to Shopping Cart
</a>
<% } else { %>
<a
href="#"
class="btn btn-block btn-danger button-style-danger mt-2 mb-2"
>
Sold out
</a>
<%} %>
</div>
</div>
<%}%>
</div>
</div>
<!--/.Second slide-->
<!--Third slide-->
<div class="carousel-item">
<div class="row">
<% for(let i=6; i<9; i++) { %>
<div class="col-md-4 product-index-box">
<div class="single-product d-flex flex-column h-100">
<a
class="title-link"
href="/products/<%=products[i].category.slug%>/<%=products[i]._id%>"
>
<img
src="<%= products[i].imagePath %>"
alt="Bag"
class="img-fluid"
/></a>
<div class="product-info">
<a
class="title-link"
href="/products/<%=products[i].category.slug%>/<%=products[i]._id%>"
>
<h6 class="mt-2 mb-2"><%= products[i].title %></h6></a
>
<div class="price">$<%= products[i].price %></div>
</div>
<% if(products[i].available) {%>
<a
href="/add-to-cart/<%=products[i]._id%>"
class="btn btn-block btn-secondary button-style mt-auto mb-2"
>
Add to Shopping Cart
</a>
<% } else { %>
<a
href="#"
class="btn btn-block btn-danger button-style-danger mt-2 mb-2"
>
Sold out
</a>
<%} %>
</div>
</div>
<%}%>
</div>
</div>
<!--/.Third slide-->
</div>
<!--/.Slides-->
</div>
<!--/.Carousel Wrapper-->
</div>
<%- include ../partials/footer %>
这是错误
TypeError: C:\ Users \ vaish \ bestbags-nodejs-ecommerce \ views \ shop \ home.ejs:52 50 | 51 |
52 | “> 53 | .jpg“ alt =”类别“ class =” circle-img“ /> 54 | 55 |
无法读取未定义的属性“ slug” 在评估时(在评估时评估(C:\ Users \ vaish \ bestbags-nodejs-ecommerce \ node_modules \ ejs \ lib \ ejs.js:633:12), :109:39) 在returnFn(C:\ Users \ vaish \ bestbags-nodejs-ecommerce \ node_modules \ ejs \ lib \ ejs.js:668:17) 在tryHandleCache(C:\ Users \ vaish \ bestbags-nodejs-ecommerce \ node_modules \ ejs \ lib \ ejs.js:254:36) 在View.exports.renderFile [作为引擎](C:\ Users \ vaish \ bestbags-nodejs-ecommerce \ node_modules \ ejs \ lib \ ejs.js:485:10) 在View.render(C:\ Users \ vaish \ bestbags-nodejs-ecommerce \ node_modules \ express \ lib \ view.js:135:8) 在tryRender(C:\ Users \ vaish \ bestbags-nodejs-ecommerce \ node_modules \ express \ lib \ application.js:640:10) 在Function.render(C:\ Users \ vaish \ bestbags-nodejs-ecommerce \ node_modules \ express \ lib \ application.js:592:3) 在ServerResponse.render(C:\ Users \ vaish \ bestbags-nodejs-ecommerce \ node_modules \ express \ lib \ response.js:1008:7) 在C:\ Users \ vaish \ bestbags-nodejs-ecommerce \ routes \ index.js:20:9 在processTicksAndRejections(internal / process / task_queues.js:97:5)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。