区块组件
本文档介绍了 SaaS Starter 中的区块组件。这些组件位于 src/components/sections/
目录下,用于构建页面的主要内容区块。
Hero
主横幅区块组件:
import { Hero } from "@/components/sections/hero";
<Hero
dict={dict}
params={params}
showTrustBar={true}
/>
属性
dict
- 国际化字典对象params
- 路由参数showTrustBar
- 是否显示信任栏
变体
- 左对齐布局
- 居中布局
- 右对齐布局
Features
功能特性展示区块:
import { Features } from "@/components/sections/features";
<Features
dict={dict}
variant="grid"
columns={3}
/>
属性
dict
- 国际化字典对象variant
- 布局变体(grid/list)columns
- 网格列数
功能
- 响应式网格布局
- 图标支持
- 动画效果
- 自定义样式
ContentSection
内容展示区块:
import { ContentSection } from "@/components/sections/content-section";
<ContentSection
title="区块标题"
description="区块描述"
image="/path/to/image.jpg"
imagePosition="right"
/>
属性
title
- 区块标题description
- 区块描述image
- 图片路径imagePosition
- 图片位置(left/right)
布局选项
- 图文左右布局
- 纯文本布局
- 带背景图布局
CTASection
号召性动作区块:
import { CTASection } from "@/components/sections/cta-section";
<CTASection
dict={dict}
variant="primary"
showBackground={true}
/>
变体
PrimaryCTA
- 主要样式GradientCTA
- 渐变背景MinimalCTA
- 简约样式
属性
dict
- 国际化字典对象variant
- 样式变体showBackground
- 是否显示背景
FAQ
常见问题区块:
import { FAQ } from "@/components/sections/faq";
<FAQ
dict={dict}
columns={2}
expandFirst={true}
/>
属性
dict
- 国际化字典对象columns
- 列数expandFirst
- 是否展开第一项
功能
- 折叠面板
- 搜索过滤
- 分类展示
Testimonials
用户评价区块:
import { Testimonials } from "@/components/sections/testimonials";
<Testimonials
dict={dict}
variant="grid"
autoplay={true}
/>
属性
dict
- 国际化字典对象variant
- 显示样式(grid/slider)autoplay
- 是否自动播放
功能
- 网格布局
- 轮播展示
- 响应式设计
最佳实践
区块组合指南
- 首页布局示例
export default function HomePage({ params }) {
const dict = await getDictionary(params.lang);
return (
<Layout dict={dict}>
<Hero dict={dict} params={params} />
<Features dict={dict} />
<ContentSection {...contentProps} />
<Testimonials dict={dict} />
<FAQ dict={dict} />
<CTASection dict={dict} />
</Layout>
);
}
- 产品页面示例
<Layout dict={dict}>
<Hero variant="product" />
<Features columns={4} />
<ContentSection imagePosition="left" />
<PricingSection />
<TestimonialsSlider />
<GradientCTA />
</Layout>
性能优化
- 图片处理
- 使用适当的图片格式
- 实现懒加载
- 提供响应式图片
- 动画效果
- 使用 CSS 动画
- 实现渐进增强
- 考虑减少动画
- 内容加载
- 实现分段加载
- 优化首屏内容
- 使用占位符
响应式设计
- 布局适配
- 使用流式布局
- 适配不同屏幕
- 调整内容密度
- 图片处理
- 使用响应式图片
- 调整图片大小
- 优化移动端展示
- 交互优化
- 适配触摸操作
- 优化表单体验
- 调整按钮大小
辅助功能
- 语义化标签
- 使用正确的 HTML 标签
- 添加 ARIA 标签
- 提供替代文本
- 键盘操作
- 支持键盘导航
- 设置合理的焦点顺序
- 提供快捷键
- 颜色对比度
- 确保文本可读性
- 提供足够的对比度
- 支持高对比度模式
国际化支持
- 文本翻译
- 使用字典文件
- 支持动态内容
- 处理长文本
- 图片本地化
- 提供本地化图片
- 适配不同语言
- 考虑文化差异
- 布局调整
- 支持文本方向
- 处理字符长度
- 适配不同字体
最后更新于: