Yii2 assetManager appendTimestamp无法正常工作

时间:2015-04-11 16:14:50

标签: php yii2

我正在使用appendTimestamp组件的assetManager

'assetManager' => [
        //append time stamps to assets for cache busting
        'appendTimestamp' => true,
    ],
    'cache' => [
        'class' => 'yii\caching\FileCache',
    ],

它正确地在每个资产之后添加时间戳,如下所示: <link href="/frontend/web/assets/7b3fec74/css/arabic.css?v=1428761706" rel="stylesheet">

但是,当我对该CSS文件进行更改时,时间戳不会更新。这是因为FileCache吗?

每次我想测试我的新更改时,我目前需要清除web/assets文件夹的内容

每次我想测试新资产时,是否需要删除资产文件夹的内容?

2 个答案:

答案 0 :(得分:0)

您提到的FileCache组件 - 与资产无关。它负责定义的缓存项目:

Yii::$app->cache->set('key', 'value')  
Yii::$app->cache->get('key') 
...

因此,assetManager可能存在问题。

答案 1 :(得分:0)

当我在资产包中使用bool needToRemove(list<char>::iterator itr, int wordLength) { if ( *itr != 'e' || wordLength < 3) { return false; } auto next = std::next(itr); return (*next == '\0'); } 作为文件来源时,我遇到了同样的问题。我解决了它购买添加$sourcePath。每次强制$publishOptions强制文件在资源文件夹中发布:

'forceCopy'=>true