Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/269.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 树枝中的动态JS路径_Php_Symfony_Twig - Fatal编程技术网

Php 树枝中的动态JS路径

Php 树枝中的动态JS路径,php,symfony,twig,Php,Symfony,Twig,我想包括不同的js文件,这取决于环境。我试过: {% javascripts 'bundles/fosjsrouting/js/router.js' 'bundles/fosjsrouting/' ~ app.environment ~ '/js/fos_js_routes.js' filter='?yui_js' output='compiled/routing' %} <script type="text/javascript" src=

我想包括不同的js文件,这取决于环境。我试过:

{% javascripts
    'bundles/fosjsrouting/js/router.js'
    'bundles/fosjsrouting/' ~ app.environment ~ '/js/fos_js_routes.js'
    filter='?yui_js'
    output='compiled/routing'
    %}
    <script type="text/javascript" src="{{ asset_url }}"></script>
 {% endjavascripts %}
{%javascripts
'bundles/fosjsrouting/js/router.js'
'bundles/fosjsrouting/'~app.environment~'/js/fos_js_routes.js'
过滤器='?yui_js'
输出=“已编译/路由”
%}
{%endjavascripts%}

但它给出了有关意外字符
~
的错误。有什么建议吗

不幸的是,目前这是不可能的。这是因为不能在资产路径中使用变量

但是,您可以使用
asset
twig助手:

<script src="{{ asset('bundles/fosjsrouting/' ~ app.environment ~ '/js/fos_js_routes.js') }}"></script>


我考虑过,但这里我需要编译这个资产,这在这种方法中是不可能的。事实上,这就是为什么assetic不能接受变量的确切原因,因为当资产包含任何变量(从控制器、请求等计算)时,它不能扫描资产模板.然而,似乎他们最近在Assetic 1.1中以某种方式添加了此功能。您应该检查symfony发行版使用的版本!好的,我知道了。不管怎么说,这似乎是做我们需要的事情的唯一方法,tnx