| name | nutui-build-local-verify |
|---|---|
| description | NutUI 比例缩放本地验证——写回 src/packages 下同路径组件 SCSS(跳过 src/packages/**/demo.scss 与 demos);--mirror 写 scale-verify/;不写 build。 |
| disable-model-invocation | true |
只做一步:用 scripts/px-to-scale-px-in-component-scss.cjs 把组件 SCSS 里裸 px 转成 scale-px 等,并把结果写回磁盘。
不扫描、不写入:src/packages/<组件名>/demo.scss(各组件目录根下的单文件)、**/demos/**、路径中含 /demo/、测试与快照目录下的 .scss(与官方 build.mjs 里对 **/demo.scss 的 ignore 一致)。
- 默认(就地覆盖):对每个匹配的
.scss,读、写都是同一路径——相对src/packages的路径不变。例如src/packages/actionsheet/actionsheet.scss转换后仍写回该文件,不会改到别的目录或改名。 --mirror:不写源码;结果写到scale-verify/<与 src/packages 相同的相对路径>(例如scale-verify/actionsheet/actionsheet.scss),便于 diff。
之后是否再跑 pnpm run build、是否用别的工具核对,由你自行决定;本 skill 不要求 build。
在 nutui-react 仓库根目录 执行。务必先 commit / stash,用完 git restore src/packages 或 git checkout -- src/packages 恢复。
若只需还原 src/packages/<组件>/demo.scss(当前脚本已跳过;若曾被旧版本误改):
find src/packages -name 'demo.scss' -exec git restore -- {} \;然后在仓库根执行验证:
pnpm run verify-scale等价:
node .cursor/skills/nutui-build-local-verify/scripts/verify-scale-generation.mjs(--in-place / -i 与默认等价。)
路径:scale-verify/report.json。覆盖模式下看 overwriteSource === true、changedFileCount、changedFiles。
# 删除仓库根下 scale-verify/ 整目录(含 report;不还原已覆盖的 src/packages)
node .cursor/skills/nutui-build-local-verify/scripts/verify-scale-generation.mjs --clean可选(只镜像、不覆盖源码):
pnpm run verify-scale:mirror--mirror 与 --in-place 不能同时使用。
- 覆盖前已 git 可回滚
-
changedFiles抽样无scale-px(0px)、无重复嵌套scale-px -
font-size/font未被误改(转换器会跳过)
- 脚本跑完 +
changedFileCount+ 列 2~3 个changedFiles - 覆盖的是真实源码时,验证完用 git 恢复