TWIG-根据变量包含不同的JS资产文件

问题描述

我想根据之前的变量设置在Twig模板中加载不同的JavaScript文件

我尝试做类似的事情:

{% set myFiletoLoad = 'awesomeScript.js' %}

{% javascripts
    'js/forms/' ~ myFiletoLoad
%}
    <script  src="{{ asset_url }}"></script>
{% endjavascripts %}

但是,每次尝试编辑资产名称时,都会出现此错误

试图调用类“ Twig \ TokenStream”的名为“ getFilename”的未定义方法

有没有更好的方法?预先谢谢你

解决方法

您似乎使用的是基于assetic bundle的旧语法,而Symfony> = 4.0不再支持该语法,但是您可以改用标准块,并且非常接近正确的语法:

item2