使用i18next进行翻译时出现错误Unexpected token ) while compiling ejs
。
我已经使用i18next实现了翻译,下面是以下代码,使用map函数时出现以下错误
en.json
{
"title": "List of Countries",
"list":[{
"name": "Singapore",
"code": "SG"
},{
"name": "Thailand",
"code": "TH"
}]
}
index.ejs
<h4><%=t('title')%></h4> //outputs correctly
<ul>
<%=t('list').map(e=>{%>
<li><%=e.name%></li>
<%})%>
</ul>
答案 0 :(得分:0)
遍历数组时,您的ejs脚本不正确,您需要在遍历时删除分配字符,并使用对象“ e”代替“ li”,如下所示:
<ul>
<%_ t('list').map(e=>{-%>
<li><%=e.name%></li>
<%_ }) -%>
</ul>
使用:
“ <%_”用于在呈现ejs时删除以前的空格
“-%>”删除行
有关更多详细信息,请参见official ejs docs
答案 1 :(得分:0)
只需删除分配字符,您就可以了。
<select class="form-control" id="parts" name="parts" multiple="multiple" >
<option th:each="part : ${partsAtribute}"
th:selected="${selectedPartsLongSet.contains(part.id)}"
th:value="${part.id}"
th:text="${part.name}">Part name and serial No.</option>
</select>