#ejs
#ejs
Вопрос:
Я пытаюсь исправить эту ошибку, но я не могу понять, в чем проблема. Я просто распечатываю файл JSON в EJS динамически.
Мой файл маршрутизации:
ExcelRoute.get('/table', (req, res) => {
var guest = 'karan'
var myData = [{
"Main Category": "Men",
"Category": "Shoes",
"Sub-Category": "Running"
},
{
"Main Category": "Women",
"Category": "Clothing",
"Sub-Category": "Tees"
},
{
"Main Category": "Kids",
"Category": "Accessories",
"Sub-Category": "Bags"
},
{
"Main Category": "Sports",
"Category": "Sport",
"Sub-Category": "Training"
},
{
"Main Category": "Collection",
"Category": "",
"Sub-Category": ""
},
{
"Main Category": "Sale",
"Category": "",
"Sub-Category": ""
},
{
"Main Category": "",
"Category": "",
"Sub-Category": ""
},
{
"Main Category": "",
"Category": "",
"Sub-Category": ""
},
{
"Main Category": "",
"Category": "",
"Sub-Category": ""
},
{
"Main Category": "",
"Category": "",
"Sub-Category": ""
},
{
"Main Category": "",
"Category": "",
"Sub-Category": ""
}
]
res.render('indexpage', {
user: myData,
guest: guest
})
})
Я использовал EJS для печати массива объектов с использованием EJS. Но это выдает мне ошибку:
отсутствует ) после списка аргументов.
Мой код HTML-файла
<form method="GET" action="table">
<button onclick="loadTable()">GenTable</button>
</form>
Мой код файла EJS:
<body>
<h1>Welcome <%=guest%></h1>
<ul>
<% user.forEach((menu)=>{ %>
<a href="#"><li><%=menu.Main Category%></li></a>
<a href="#"><li><%=menu.Category%></li></a>
<a href="#"><li><%=menu.Sub Category%></li></a>
<% }) %>
</ul>
</body>
Ответ №1:
Вы должны заключить каждое свойство в квадратные скобки.
<% user.forEach((menu)=>{ %>
<a href="#"><li><%=menu['Main Category']%></li></a>
<a href="#"><li><%=menu['Category']%></li></a>
<a href="#"><li><%=menu['Sub Category']%></li></a>
<% }) %>