Как открыть окно .__ INITIAL_STATE__ для данных в файле .e js просмотра? - PullRequest
0 голосов
/ 31 марта 2020

Я пытаюсь передать данные на клиентскую сторону, инициализируя окно. INITIAL_STATE , однако, это продолжает давать мне сообщение об ошибке "Expression Ожидается", которую я не уверен, как исправить

    <script>
       window.__INITIAL_STATE__ = <%- JSON.stringify(initialState) %>;
    </script> 

Ответы [ 2 ]

0 голосов
/ 10 апреля 2020

Я бы порекомендовал вам изменить подход и поместить JSON.stringify в

<script id="__INITIAL_STATE__" type="application/json"> 
    {JSON.stringify(data).replace(/</g,'\\u003c')}
</script>

, а на стороне клиента просто сделать

const state = JSON.parse(document.getElementById('__INITIAL_STATE__').textContent)

в соответствии с chrome devs более быстрое решение, и вы не получите никаких сюрпризов, связанных с цитатами.

Более быстрые приложения с JSON .parse (Chrome Dev Summit 2019): https://www.youtube.com/watch?v=ff4fgQxPaO0

0 голосов
/ 05 апреля 2020

Вы должны заключить выражение в кавычки следующим образом:

<script>
  window.__INITIAL_STATE__ = '<%- JSON.stringify(initialState) %>';
</script> 
...