Yii2资产绑定静态路径

Yii2资产绑定静态路径,yii2,Yii2,我想在ServiceWorker中包含css/js文件的路径以进行缓存。 我看到的是,Yii使用AppAssets中的hash将css/js文件部署到动态目录中 比如说 /assets/a7fd2538/css/site.css 那么有没有办法禁用这个散列目录a7fd2538呢。 而我得到的只是 /assets/css/site.css 谢谢。您可以将资产文件直接放在某个可访问的目录中。例如在web/css/和web/js/中。然后,通过指定$basePath和$baseUrl并将$sour

我想在ServiceWorker中包含css/js文件的路径以进行缓存。 我看到的是,Yii使用AppAssets中的hash将css/js文件部署到动态目录中

比如说

/assets/a7fd2538/css/site.css
那么有没有办法禁用这个散列目录a7fd2538呢。 而我得到的只是

/assets/css/site.css

谢谢。

您可以将资产文件直接放在某个可访问的目录中。例如在web/css/和web/js/中。然后,通过指定$basePath和$baseUrl并将$sourcePath留空,将AppAssets捆绑包设置为直接使用它们,而无需复制

例如:

名称空间app\assets; 使用yii\web\AssetBundle; 类AppAsset扩展了AssetBundle { public$basePath='@webroot'; public$baseUrl='@web'; 公共$css=[ “css/site.css”, ]; 公共$js=[ “js/site.js”, ]; //……其他定义 }
工作完美。所以基本上不使用$sourcePath是必需的,您需要设置$basePath和$baseUrl。设置$sourcePath后,资产管理器将复制源并覆盖$baseUrl和$basePath,因此您希望跳过该步骤。