avholodnyak/assets-buster-bundle

此包提供使用buster文件进行缓存破坏的支持。它使用在Symfony 3.1中引入的自定义版本策略功能。

安装: 18

依赖者: 0

建议者: 0

安全: 0

星星: 1

关注者: 1

分支: 0

开放问题: 0

类型:symfony-bundle

v1.0.0 2016-12-26 13:17 UTC

This package is not auto-updated.

Last update: 2024-09-28 19:58:08 UTC


README

Build Status Coverage Status

当您编写前端应用程序时,您通常需要更新客户端的缓存资源。此包提供您使用buster文件更新缓存资源的能力(您可以使用gulp-buster包生成这些文件)。

此包使用在Symfony 3.1中引入的自定义版本策略功能。在创建此包时,我受到了这篇文章的启发。

安装

使用composer安装包

$ composer require avholodnyak/assets-buster-bundle

然后,将包添加到项目中的app/AppKernel.php文件中已注册的包列表以启用它

<?php
// app/AppKernel.php

public function registerBundles()
{
    $bundles = array(
        // ...
        new AVHolodnyak\AssetsBusterBundle\AssetsBusterBundle(),
    );
}

然后,在您的app/config/config.yml文件中配置包

assets_buster:
    # Absolute path to the busters file
    busters_path: "%kernel.root_dir%/../web/busters.json"

    # (Optional) Version format (sprintf-compatible format string). Default value is "%%s?%%s"
    version_format: "%%s?v=%%s"

如何使用

只需使用标准的symfony asset()函数为Twig模板(或PHP模板中的$view["assets"]->getUrl()),将自动附加资源文件的版本。如果您不想附加资源文件的版本,则不要将相应的版本放入busters文件中。

以下是如何使用此包与Twig模板一起使用的示例

<link rel="stylesheet" href="{{ asset('js/example-script.js') }}">

默认情况下,此包使用"%s?%s"版本格式。如果busters文件中找到相应的版本,则将其附加到结果资源路径

<link rel="stylesheet" href="/js/example-script.js?cc1d8837ebc45c34f9e35217db1d2a7e">

如果busters文件中没有找到版本,则不会将任何内容附加到结果路径

<link rel="stylesheet" href="/js/example-script.js">

您可以通过更改配置文件中的version_format选项来更改此包附加资源文件版本的方式(见上面的安装部分)。