@driver-digital/vite-plugin-shopfy- clean (英语)
清理您 Shopify 主题的 Vite 插件 assets/ 整个构建和监视期间的文件夹。 它被设计为与Barrel的 购买虚拟插件。 。 。 .
为何您可能需要这个: 当 Vite 发出 散列文件名时( 例如 ), app-abc123.js),更古老的散列文件可以随着时间的推移而积累. 此插件会安全地去除已过时的资产, 所以您 assets/ 目录保持整洁,您的主题只引用当前文件 .
特征
- 清理建筑物开始时上一份清单所列原有资产.
- 通过比较前一份清单与目前的清单——在德夫(观察)和生产建筑中——来去除每次建造之后的陈旧资产.
- 从清单中追踪JS、CSS和资产文件(图像、字体等)。 源图( R)
.map档案不在清单里 所以没有清理. - 滚动/声音
watchMode(没有env var 需要)来控制表的特定行为. - 与 Shopify 主题资产目录结构有关的工作.
- 最小配置; 合理的默认值 .
安装
npm i -D @driver-digital/vite-plugin-shopify-clean
同伴要求:
- 节点.js:
^20.19.0 || >=22.12.0 - 维特:
>=6
使用量
在Barrel 旁边的 Vite 配置中添加插件 购买虚拟插件。 。 。 .
// vite.config.js
import { defineConfig } from 'vite'
import shopify from 'vite-plugin-shopify'
import shopifyClean from '@driver-digital/vite-plugin-shopify-clean'
export default defineConfig({
build: {
emptyOutDir: false,
sourcemap: true
},
plugins: [
shopifyClean({
// themeRoot: './',
// manifestFileName: '.vite/manifest.json',
}),
shopify({
tunnel: true,
themeRoot: ".",
sourceCodeDir: "frontend"
})
],
})
注释:
- 直接输出到您的 Shostify 主题时
assets/文件夹, 设置build.emptyOutDir: false。该插件依赖于先前的构建文件并显示以决定删除什么。 如果Vite先空出目录,则没有什么可比较的,而且清理无法按预期进行(而你一般不希望Vite去擦去您的主题资产). - 插件期望在您的主题中存在 Vite 列表
assets/目录(默认时间:assets/.vite/manifest.json) (中文(简体) ). 如果您的整合将清单写到别处, 请配置manifestFileName或者说themeRoot相应. - 在监视模式下,插件会随着新文件被放出而自动处理清理工作.
选项
interface VitePluginShopifyCleanOptions {
/**
* Relative location of the manifest inside the theme's assets directory.
* Defaults to `.vite/manifest.json` (resolved under `assets/`).
*/
manifestFileName?: string
/**
* Shopify theme root directory (relative to the directory Vite is run from).
* Defaults to `./`.
*/
themeRoot?: string
}
插件使用的默认 :
manifestFileName数字 :.vite/manifest.jsonthemeRoot数字 :./
如何运作
插件跟踪了Vite的表单(JS,CSS,以及图像和字体等资产文件)所列出的文件,并使用表单比较来确定要清理什么.
- 构建启动( E)
buildStart(中文(简体) )- 若为
assets/.vite/manifest.json已存在(或您配置的路径),插件读取先前释放的资产并删除它们assets/在新的建筑之前 这可以防止陈旧的文件被遗留在建筑物之间.
- 若为
- 写入捆绑( E)
writeBundle(中文(简体) )- 在新资产被写入后,插件会将之前的表单与当前表单进行比较. 旧清单中的任何文件如果不再列入新清单,则予以删除。 这样可以处理大楼之间重新命名或去除出入口的情况.
更改日志
见 变动情况 用于发行笔记.
许可证
麻省理工学院
鸣谢
由 所建并维持 驱动数字
最初从 @by-association- only/vite-plugin-shopfy-clean 互联网档案馆的存檔,存档日期2013-12-02 - 非常感谢 丹·甘布尔 为了他的原作.