Неожиданный токен при компиляции ejs i18next - PullRequest
0 голосов
/ 16 июня 2019

Я получаю ошибку Unexpected token ) while compiling ejs при выполнении перевода с использованием i18next.

Я реализовал перевод с использованием i18next, ниже приведен следующий код, получающий следующую ошибку при использовании функции карты

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>

Ответы [ 2 ]

0 голосов
/ 16 июня 2019

Просто удалите назначенный символ, и все в порядке.

<ul>
    <% t.list.map(e => {%>
       <li><%=e.name%></li>
    <%})%>
</ul>
0 голосов
/ 16 июня 2019

Ваши скрипты ejs неверны при итерации по массиву, вам нужно удалить символ присваивания при итерации и использовать объект "e" вместо "li" следующим образом:

<ul> 
<%_ t('list').map(e=>{-%> 
<li><%=e.name%></li>
<%_  }) -%>
</ul>

Использование:

"<% _" для удаления предыдущих пробелов при рендеринге ejs </p>

"-%>" для удаления строки

Подробнее см. официальные документы ejs

...