【问题标题】:How do you compress included Twig JavaScript files in Symfony2?你如何在 Symfony2 中压缩包含的 Twig JavaScript 文件?
【发布时间】:2012-04-30 13:44:03
【问题描述】:

在 Symfony2 中,我有许多标准 JavaScript 文件,我使用 Twig YUI 过滤器将它们包含并压缩到一个文件中,如下所示:

{% javascripts
    '@WebIlluminationShopBundle/Resources/public/js/jquery.js' 
    '@WebIlluminationShopBundle/Resources/public/js/ui.js' 
    '@WebIlluminationShopBundle/Resources/public/js/tools.js' 
    '@WebIlluminationShopBundle/Resources/public/js/overlay.js' 
    '@WebIlluminationShopBundle/Resources/public/js/uniform.js' 
    '@WebIlluminationShopBundle/Resources/public/js/slider.js' 
    '@WebIlluminationShopBundle/Resources/public/js/global.js' 
    output='js/shop-compressed.js' filter='yui_js' %}
    <script src="{{ asset_url }}" type="text/javascript"></script>
{% endjavascripts %}

然后在我的 Twig 模板中包含特定的 JavaScript Twig 文件,这些文件将数据作为来自控制器的变量传递给它们:

{% include 'SomeCompanySomeBundle:ControllerName:testScript.js.twig' with {'variable1': variable1, 'variable2': variable2} %}

有没有办法像使用 YUI 过滤器一样压缩这个 JavaScript 文件?

这可能是不可能的,但只是想知道是否有新人。

【问题讨论】:

    标签: symfony twig


    【解决方案1】:

    Twig 生成的 JS 文件需要在每次请求时使用 Twig 上下文刷新,儿子这是不可能的!

    【讨论】:

    • 我不明白为什么这是不可能的。所有周围的 JS 都可以被预压缩和缓存,然后可以在运行时插入 [uncompressed] 上下文。或者,您可以在上下文中替换后在运行时进行压缩(可能会导致文件更小),但这会很慢(呃)。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-16
    相关资源
    最近更新 更多