用途:在构建 Shopify App Home 界面(Admin iframe 之外的应用界面)时使用本技能,以 Polaris Web Components 的 s-* 自定义元素编写 UI。
主要能力:
- 页面结构:s-page 搭配 s-section 组织内容,s-section 用作卡片式容器(可带 heading)。
- 布局:s-stack 支持 direction(block/inline)、gap、alignItems、justifyContent;s-box 仅用于内边距、边框与间距,不用于卡片。
- 基础组件:s-button(variant、tone、type、disabled)、s-text(headingLg/headingMd/headingSm/bodySm,tone 如 subdued/critical/success)、s-banner(tone、onDismiss)、s-link(href、external)。
- 表单元素:s-text-field(label、value、helpText)、s-select(含 option)、s-checkbox(label、checked)。
- 常见模式:设置页、空状态、带操作的列表。
使用方式与注意事项:
- App Home 使用 Polaris Web Components(s-* 元素),不是 Polaris React(@shopify/polaris);后者用于内嵌 Admin 应用。
- 无需 import,直接使用原生元素;交互逻辑用 JS 事件监听(如 addEventListener)。
- TypeScript 可在 tsconfig.json 的 compilerOptions.types 中加入 @shopify/polaris-types。
- 最佳实践:卡片用 s-section;布局与间距用 s-box;优先使用 s- 元素而非自定义 div;保持语义结构 s-page > s-section > 内容;间距用 gap 属性而非手动 margin。
- 仅在用户明确要求,或 s-* 无法实现所需布局与特效时才用纯 div 和内联样式。
限制:资料未提供各组件完整属性列表、版本要求、安装命令、收费或具体平台兼容性信息;组件属性以官方文档为准。