用途:本技能帮助开发者构建 Shopify Checkout UI Extensions,在结账页特定目标点插入自定义 UI,用于替代 checkout.liquid(2025 年 8 月弃用)。
主要能力:使用类 React 的沙盒组件与 Shopify 组件库,保证界面一致与无障碍;可通过 hooks 读取结账数据、写入 metafield 收集自定义信息;支持商家在扩展编辑器中配置设置;扩展隔离运行,不影响结账性能。
使用方式:需 Shopify CLI 3.x+ 与 Shopify Partners 应用,Node.js 18+ 及 @shopify/ui-extensions-react 包,并启用 checkout extensibility 的开发商店。先在 shopify.extension.toml 中配置 api_version、type、target 及 capabilities;再用 reactExtension 注册目标点并渲染组件;用 useSettings、useApplyMetafieldsChange、useTotalAmount 等 hooks 读写数据;通过 shopify app build --verbose 检查包体积。
限制与错误:扩展无 DOM 访问,禁止 fetch、window 等操作,只能用 Shopify 组件与 hooks;包体积超 64KB 会触发 EXTENSION_LOAD_FAILED,需 tree-shaking、避免 lodash/date-fns/zod,或拆分多个扩展;若使用 block_progress 出错会阻断结账完成,需加 try/catch;目标点未渲染需核对 TOML 配置与后台放置位置。其余平台、收费与价格信息暂未提供。