2016-06-03 8 views

Antwort

7

ich meinen Zweig gerade gesetzt vars als Globals, bevor Sie Javascript-Dateien erfordern.

<!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> 

Ein weiterer aproach ich benutze, ist ein Javascript-Block in meinem Haupt-Vorlage forsee

base.twig.html

<!DOCTYPE html> 
<html> 
    <head> 
     <title></title> 
    </head> 
    <body> 
     {% block body %} 
     {% endblock %} 
     {% block javascript %} 
     {% endblock %} 
    </body> 
</html> 

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 %} 
+0

Danke, ich Ihre erste Methode verwenden, es ist mehr Praxis – XZKS

+0

ich mit lieber [FOSJsRoutingBundle] (https://github.com/FriendsOfSymfony/FOSJsRoutingBundle) –

+1

Was einen 'route' mit geben' Zweig Variablen zu tun hat Erzeugen 'in' JS'? – DarkBee