Javascript 使用随机文件名-UglifyJS和Symfony2指定不同的输出目录

Javascript 使用随机文件名-UglifyJS和Symfony2指定不同的输出目录,javascript,php,symfony,twig,uglifyjs,Javascript,Php,Symfony,Twig,Uglifyjs,我知道我可以用下面的例子让它输出一个自定义文件,但是如果我想让它转到js/compile/.js呢?我找不到任何解释这一点的文档。我知道如果我们不使用输出参数,它只会在JS/下创建一个随机命名的JS文件 我终于弄明白了。秘密是通过Assetic建立起来的 assetic: debug: "%kernel.debug%" use_controller: false node: "%node_path%" write_to: %kernel.root

我知道我可以用下面的例子让它输出一个自定义文件,但是如果我想让它转到js/compile/.js呢?我找不到任何解释这一点的文档。我知道如果我们不使用输出参数,它只会在JS/下创建一个随机命名的JS文件


我终于弄明白了。秘密是通过Assetic建立起来的

assetic:
    debug:          "%kernel.debug%"
    use_controller: false
    node: "%node_path%"
    write_to: %kernel.root_dir%/../web/static/
将write_添加到行中完成了此操作。因此,文件被写入static/now。不过,还必须做另一个更改,因为这实际上并没有改变asset_url显示的内容,我知道,只是assetic写入生成文件的位置有点傻

我还必须添加以下配置:

framework:
    templating:
        packages:
            assetic:
                base_urls: static/
这将创建一个名为assetic的新包,该包定义基本URL。现在我们必须告诉它使用这个包,并删除输出

{% javascripts package='assetic'
    'vendor/bower_components/angular/angular.min.js'
    'https://cdn.ywxi.net/js/1.js'
    'vendor/bower_components/jquery/dist/jquery.min.js'
    'js/app/*'
    'js/app/services/*'
    'js/app/directives/*'
    'js/app/controllers/*'
    filter='?uglifyjs2'
%}
    <script src="{{ asset_url }}"></script>
{% endjavascripts %}

我不能直接回答,但作为一种解决方法,您最终可以使用output='js/compile/app.js'和bust缓存。
{% javascripts package='assetic'
    'vendor/bower_components/angular/angular.min.js'
    'https://cdn.ywxi.net/js/1.js'
    'vendor/bower_components/jquery/dist/jquery.min.js'
    'js/app/*'
    'js/app/services/*'
    'js/app/directives/*'
    'js/app/controllers/*'
    filter='?uglifyjs2'
%}
    <script src="{{ asset_url }}"></script>
{% endjavascripts %}