Как передать переменную ejs в JavaScript? - PullRequest
0 голосов
/ 02 февраля 2019

Я не могу перенести переменную ejs в javascript.У меня есть for в ejs:

<% for(var i=0; i < lyrics.length; i++) {%>
            <!--MELODIE-->

            <br>

            <%= lyrics[i].texte %> 

, и я хочу войти в браузер текст песни [i] .texte переменной.Я пытался var a = <%= lyrics[i].texte %>;, но это не сработало.Я также попытался установить в ejs <% v1= lyrics[i].texte ; %> и установить js var равным v1, но это снова не сработало.Мне нужно преобразовать текст песни [i] .texte в переменную js.

Я думаю, что проблемы возникли из .texte после имени var (texte - это имя столбца в базе данных, и это строка).Я храню в нем поэзию.И когда я использую стандартную переменную (например, <% var = 30%>), она работает нормально при передаче JS.Спасибо за помощь!

Ответы [ 2 ]

0 голосов
/ 04 февраля 2019
<% lyrics.forEach(lyric=> { %>
<li class="<%=lyric.texte %>"><%=lyric.texte %></li>
<% }); %>

вот код для цикла lyrics, если вы хотите получить доступ к определенному lyric.texte, вам нужно сделать document.querySelector(".className"); в вашем файле JavaScript.

0 голосов
/ 02 февраля 2019

Сначала вы должны преобразовать вашу переменную в строку, потому что это массив.Используйте var myVar = <%-JSON.stringify(ejsVar)%>;, чтобы решить вашу проблему.

Теперь вы можете использовать myVar в javascript.

...