web-dev-qa-db-ja.com

twig JavaScript内のtwigファイル内の変数を印刷するには

カスタムモジュールのtwigファイルがあります。<script></script>セクションと、そのセクション内にtwig変数を出力する必要があります。これを行うにはどうすればよいですか?

{{ set twigVariable = '123456' }}

<script>
    function myFunc() {
        var myJsVar = {{ twigVariable }};
    }
</script>

上記のように書くと、変数は出力されません。

2
i am batman

テンプレートにカスタムスクリプトブロックを追加することは悪い習慣であることを説明しておき、エラーを指摘します。

(1)変数の内容を設定するには、set{% %}ではなく{{ }}ブロックにラップする必要があります。

(2)おそらくJavaScriptストリングとして値が必要なので、" "でラップすることを忘れないでください。

これは合計すると

{% set twigVariable = '123456' %}

<script>
  function myFunc() {
    var myJsVar = "{{ twigVariable }}";
  }
</script>

どちらでも問題なく機能するはずです。

4
Mario Steinitz