Symfony2 - 在JS事件中执行TWIG

时间:2016-09-26 11:26:03

标签: javascript jquery symfony session twig

我看到很多例子在<script>标记中为tw变量分配twig,所以我决定在click事件中调用twig函数,但是不幸的是,单击与否,它仍在执行{{1代码。

TWIG

最后,当页面加载时,它正在以名称&#39;名称&#39;执行树枝和会话。设置为&#39; value2&#39;。 Twig的渲染时间早于执行JS。任何想法如何在JS中正确执行twig?

2 个答案:

答案 0 :(得分:2)

你误解了树枝的目的。 Twig是templating language

这意味着它在将输出发送到浏览器之前在服务器上运行。在返回之前,你会用它来模拟一些JS。

如果它的使用正确(模板是在xxx.js.twig文件上运行的)那么twig&#39;代码&#39;永远不会出现在客户端浏览器的文件中。

答案 1 :(得分:0)

正如你所说的那样twigJS之前执行。 Twig本身被编译为PHP,因此在离开服务器之前进行解释。

您可以传递给JS本身的唯一内容是评估方法,并将它们存储为变量,即如果您将它们放在twig文件中,例如:

<script>
    var current_date = '{{ "now" | date('d-m-Y') }}';
</script>

执行twig方法并获得正确响应的唯一正确方法是使用ajax调用调用控制器