extern js文件中的Twig变量

Men*_*lle 2 javascript jquery external symfony twig

我想要外部我的js代码,但有twig变量.你的伎俩是什么?

team: {{ 'Select your team'|trans }}
Run Code Online (Sandbox Code Playgroud)

谢谢,

Dar*_*Bee 11

我只是在需要任何javascript文件之前将我的twig vars设置为全局变量.

<!DOCTYPE html>
<html>
   <head>
      <title></title>
   </head>
   <body>
       <script>
           var my_twig_var = {% if twig_var is defined %}'{{ twig_var }}'{% else %}null{% endif %}
       </script>
       <script src="scripts/functions.js"></script>
   </body>
</html>
Run Code Online (Sandbox Code Playgroud)

我使用的另一个方法是在我的主模板中预测一个javascript块

base.twig.html

<!DOCTYPE html>
<html>
   <head>
      <title></title>
   </head>
   <body>
       {% block body %}
       {% endblock %}
       {% block javascript %}
       {% endblock %}
   </body>
</html>
Run Code Online (Sandbox Code Playgroud)

page.html.twig

{% extends base.twig.html %}
{% block body%}
<h1>Hello World</h1>
{% endblock %}
{% block javascript %}
<script>
  alert('{{ twig_var|default('Hello World') }}');
</script>
{% endblock %}
Run Code Online (Sandbox Code Playgroud)