35

我正在尝试使用 twig json_encode 函数但是当我这样做时

    var packageDetails =  {{(packageDetails|json_encode)}};

并且 packageDetails 是从控制器传递的数组数组

它给了我错误的说法

    invalid property id 

因为" 所以我想使用转义过滤器;我该如何使用它?

4

3 回答 3

65

仅仅是因为您没有将输出用引号括起来吗?

var variable = '{{{reference}}}';

更新:

解决问题的实际答案是根据评论将 |raw 添加到标签中

var packageDetails =  {{(packageDetails|json_encode|raw)}};
于 2012-09-04T06:58:41.097 回答
43

您可以通过以下方式添加选项:

{{ data|json_encode(constant('JSON_PRETTY_PRINT'))|raw }}

添加这个是因为它回答了您标题中的问题,但听起来原始过滤器确实是您正在寻找的。不过,其他人可能会觉得这很有用。

于 2013-10-07T08:17:19.780 回答
4

对于任何对 Blade / Laravel5.x 有类似问题的人

var v = JSON.parse('{!! $v !!}');
于 2015-09-22T13:04:44.900 回答