"SyntaxError: ожидаемое имя свойства, полученное '&'" при передаче массива JSON.stringify () в шаблон Express с использованием Node.js - PullRequest
0 голосов
/ 08 ноября 2019

Я пытаюсь передать массив JSON, сформированный на серверной стороне, используя node.js, в шаблон внешнего интерфейса, чтобы пользователь мог им манипулировать. Однако у меня возникли некоторые проблемы с этим. Вот код, который я использую для рендеринга страницы:

res.render('pages/profile.ejs', {
                user : doc // get the user out of session and pass to template
                ,passArray: JSON.stringify(passArray)
            });

Затем в скриптах для профиля на внешнем интерфейсе у меня есть:

<script>
        var passArrayFull= <%=passArray%>];  
        //do stuff with passArrayFull
        console.log(passArrayFull);
</script>

Проблема в том, что я получаю этот SyntaxErrorс внешнего сайта, и когда я смотрю на источник для проверки passArray, он выглядит так:

[{&#34;unit&#34;:&#34;B1&#34;,&#34;name&#34;: 

(и т. д.)

Так что, похоже, JSON.stringify каким-то образом преобразует"персонаж в сущность HTML", и он не конвертируется обратно, даже если я оберну внешний интерфейс в JSON.parse (). Я пытался не использовать JSON.stringify, но тогда кажется, что полный массив не может быть передан (я получаю другую ошибку). Что я здесь не так делаю?

...