json_encode 个包含特殊字符和空格的字符串
json_encode strings with special characters and spaces
我需要哪个过滤器 json_encode
包含特殊字符和空格的字符串?是否有更好的方法将 json
对象与来自 twig
变量的翻译字符串传递到 Vue.js
中的模板?
我试过了;
{# renders: äeiöü #}
<p>{{'string1'|trans}}</p>
{# renders: this is a string with spaces #}
<p>{{'string2'|trans}}</p>
{% set snippets = {
string1: 'string1'|trans,
string2: 'string2'|trans,
} %}
<div id="app" snippet={{ snippets|json_encode }}>
<demo></demo>
</div>
<script>
let snippetJSON = document.getElementById('app').getAttribute('snippet');
//Output: {"string1":"\u00e4ei\u00f6\u00fc","string2":"this
console.log(snippetJSON);
</script>
您需要使用JSON.parse()
解码原始值。
感谢评论中的@deceze。该属性必须用引号引起来。另外@WPhil 是对的, JSON.parse() 部分也丢失了。
我需要哪个过滤器 json_encode
包含特殊字符和空格的字符串?是否有更好的方法将 json
对象与来自 twig
变量的翻译字符串传递到 Vue.js
中的模板?
我试过了;
{# renders: äeiöü #}
<p>{{'string1'|trans}}</p>
{# renders: this is a string with spaces #}
<p>{{'string2'|trans}}</p>
{% set snippets = {
string1: 'string1'|trans,
string2: 'string2'|trans,
} %}
<div id="app" snippet={{ snippets|json_encode }}>
<demo></demo>
</div>
<script>
let snippetJSON = document.getElementById('app').getAttribute('snippet');
//Output: {"string1":"\u00e4ei\u00f6\u00fc","string2":"this
console.log(snippetJSON);
</script>
您需要使用JSON.parse()
解码原始值。
感谢评论中的@deceze。该属性必须用引号引起来。另外@WPhil 是对的, JSON.parse() 部分也丢失了。