关于 syncfusion-vue-pivot-table
为 Vue 开发者提供 Syncfusion PivotView 的实现指南,涵盖数据透视表、分析与可视化配置。附带经验证的参考文件,并强调远程数据源的安全验证。
主要功能
- 01配置数据源与透视字段
- 02筛选、排序和钻取数据
- 03呈现透视图表
- 04导出 Excel、CSV 和 PDF
- 05保存透视表状态
- 06按参考文件核对 API
适用场景
- 01在 Vue 应用中实现数据透视表
- 02构建交互式数据分析界面
- 03开发商业智能仪表板
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ syncfusion/ vue-ui-components-skills --skill syncfusion-vue-pivot-table安装后在 Claude Code 中输入/syncfusion-vue-pivot-table确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/aggregation-and-calculated-fields.mdclassic-layout.mdconditional-formatting.mdconnecting-to-data-source.mddata-binding.mddata-formatting.mddata-shaping.mddrill-down-up.mdediting.mdexport.mdfiltering.mdgetting-started.mdgrouping.mdhyperlink.mdolap.mdperformance.mdpivot-chart.mdreport-manipulation.mdrow-and-column.mdshow-hide-totals.mdsorting.mdstate-persistence.mdtoolbar.mdtooltip.md详细介绍
实现 Syncfusion Vue PivotView
Syncfusion Vue Pivot Grid 是一款功能强大的数据可视化和分析组件,可用于创建交互式数据透视表、汇总多维数据并执行高级分析操作。
重要提示: 务必查阅此技能中的参考文件(references/*.md),验证 API 类名、属性和方法签名。这些文件经过维护,包含经过验证且可正常运行的示例。不要假设其他来源中的 API 详细信息准确无误。
⚠️ 安全警告:数据源验证
关键安全须知: 实现数据透视表时,务必使用可信数据源。切勿在未经适当验证和清理的情况下,从不可信或用户提供的 URL 获取数据或绑定数据。
安全最佳实践:
- 使用本地数据:优先使用本地内存数据源,以确保最高安全性
- 验证远程数据源:仅连接到由你控制且经过身份验证和授权的 API 端点
- 清理用户输入:切勿允许用户指定任意 URL 或数据源
- 实现身份验证:始终使用身份验证标头和安全的 API 端点
- 内容验证:绑定来自外部数据源的所有数据前,先验证并清理这些数据
- 使用 HTTPS:远程数据连接始终使用 HTTPS
- 速率限制:在 API 端点实施速率限制,防止滥用
安全风险:
- 间接提示词注入:不可信的第三方数据可能包含恶意内容,从而操纵 AI Agent 的行为
- 数据窃取:恶意数据源可能会尝试提取敏感信息
- 代码注入:不可信数据可能包含脚本或有害内容
推荐做法:
✅ 应当:使用受控且经过身份验证的后端 API
✅ 应当:实施服务器端数据验证
✅ 应当:使用环境变量配置 API 端点
✅ 应当:将允许的数据源加入白名单
❌ 不要:接受用户提供的 URL
❌ 不要:绑定到公开且不可信的端点
❌ 不要:跳过数据验证和清理
❌ 不要:对敏感数据使用 HTTP
目录
概述
Syncfusion Vue PivotView(数据透视表)组件提供了一种功能强大的交互式方式,用于分析和可视化大型数据集。它支持:
- 多个数据源(JSON、OLAP、MySQL、SQL Server、MongoDB 等关系数据库)
- 丰富的钻取功能,便于详细探索
- 用于可视化呈现数据的透视图表
- 导出为 Excel、CSV 和 PDF
- 可自定义的布局(紧凑布局和经典/表格布局)
- 针对大型数据集的性能优化
- 状态持久化,确保用户体验连续性
在以下场景中实现功能时,请使用此技能:
- Vue 应用中的数据透视表
- 数据汇总和分析 UI
- 交互式数据探索界面
- 商业智能仪表板
核心 API 和属性
组件属性
| 属性 | 类型 | 描述 |
|---|---|---|
dataSourceSettings | IDataOptions | 配置数据源、行、列、值、筛选器和格式 |
height | number | string | 设置组件高度,单位为像素或百分比 |
width | number | string | 设置组件宽度,单位为像素或百分比 |
gridSettings | IGridSettings | 控制布局(Compact/Tabular)、列宽、行高和调整大小 |
displayOption | IDisplayOption | 控制 Grid 与 Chart 视图:{ view: 'Grid' | 'Chart' | 'Both' } |
chartSettings | IChartSettings | 配置图表类型、系列、图例、坐标轴和工具提示 |
groupingBarSettings | IGroupingBarSettings | 自定义分组栏的外观和行为 |
allowExcelExport | boolean | 启用 Excel 导出功能 |
allowPdfExport | boolean | 启用 PDF 导出功能 |
allowCsvExport | boolean | 启用 CSV 导出功能 |
allowMemberFilter | boolean | 在 UI 中启用成员筛选 |
allowLabelFilter | boolean | 在 UI 中启用标签筛选 |
allowValueFilter | boolean | 在 UI 中启用值筛选 |
allowSorting | boolean | 启用排序功能 |
allowDrilling | boolean | 启用下钻/钻透操作 |
allowDrillThrough | boolean | 启用钻透以查看详细数据(比 allowDrilling 更精细) |
allowResizing | boolean | 启用列和行大小调整 |
allowNumberFormatting | boolean | 在工具栏和对话框中显示数字格式选项 |
allowConditionalFormatting | boolean | 通过工具栏按钮启用条件格式功能 |
allowCalculatedField | boolean | 启用计算字段创建功能 |
showFieldList | boolean | 显示字段列表面板(用于配置字段的 UI) |
showGroupingBar | boolean | 在顶部显示分组栏(用于拖放整理字段的 UI) |
showToolbar | boolean | 显示包含导出、报表和字段管理按钮的工具栏 |
toolbar | string[] | 工具栏项目数组:['New', 'Save', 'SaveAs', 'Rename', 'Remove', 'Load', 'Grid', 'Chart', 'MDX', 'Export', 'SubTotal', 'GrandTotal', 'ConditionalFormatting', 'NumberFormatting', 'FieldList'] |
showTooltip | boolean | 将鼠标悬停在单元格上时显示工具提示 |
enablePersistence | boolean | 自动将数据透视状态保存到本地存储 |
conditionalFormatSettings | IConditionalFormatSettings[] | 预定义条件格式规则:值范围、运算符和样式 |
aggregateTypes | string[] | 限制下拉列表中可用的聚合类型 |
maxNodeLimitInMemberEditor | number | 成员筛选对话框中加载的最大成员数(默认值为 1000) |
saveReport | Function(args) | 用户通过工具栏保存报表时触发的回调 |
loadReport | Function(args) | 用户通过工具栏加载报表时触发的回调 |
renameReport | Function(args) | 用户通过工具栏重命名报表时触发的回调 |
removeReport | Function(args) | 用户通过工具栏移除报表时触发的回调 |
newReport | Function(args) | 用户通过工具栏创建新报表时触发的回调 |
fetchReport | Function() | 用于获取已保存报表列表的回调 |
DataSourceSettings 属性
| 属性 | 类型 | 描述 |
|---|---|---|
dataSource | any[] | 包含数据的 JSON 数组或 DataManager 实例 |
type | 'JSON' | 'CSV' | 数据源类型(默认:'JSON') |
rows | IField[] | 要在行轴中显示的字段 |
columns | IField[] | 要在列轴中显示的字段 |
values | IField[] | 用于聚合的值/度量字段 |
filters | IField[] | 要在筛选轴中显示的字段 |
expandAll | boolean | 初始展开所有行/列分组 |
drilledMembers | IDrilledMember[] | 预先展开的成员:[{ name: 'Country', items: ['France'] }] |
filterSettings | IFilter[] | 要应用的成员/标签/值筛选器 |
sortSettings | ISort[] | 字段的排序规则 |
formatSettings | IFormatSettings[] | 数字格式:[{ name: 'Amount', format: 'C0' }] |
calculatedFieldSettings | ICalculatedFieldSettings[] | 计算字段公式 |
核心方法
// Export methods
excelExport() // Export pivot to Excel (.xlsx)
pdfExport() // Export pivot to PDF
csvExport() // Export pivot to CSV
// Dialog methods
createCalculatedFieldDialog() // Show calculated field creation dialog
showConditionalFormattingDialog() // Open conditional formatting dialog
createDrillThroughDialog() // Show drill-through data dialog
// Data manipulation
refresh() // Refresh pivot with current settings
setProperties({...}) // Update properties dynamically
// Data retrieval
getFieldList() // Get all available fields from data source
getDataSourceSettings() // Get current dataSourceSettings configuration
// Persistence
getPersistData() // Get serialized pivot state
loadPersistData(data) // Restore pivot state
事件
下方列出了 PivotViewComponent 文档中的所有事件。使用 Vue 的 :eventName="handler" 语法进行绑定。
数据操作事件
| 事件 | 参数 | 触发时机 |
|---|---|---|
| actionBegin | dataSourceSettings、actionName、fieldInfo、cancel | 任何透视操作(筛选、排序、聚合、计算字段)之前 |
| actionComplete | dataSourceSettings、actionName、fieldInfo、actionInfo | 透视操作成功完成后 |
| actionFailure | actionName、errorInfo | 透视操作失败或遇到错误时 |
常见的 actionName 值:
"Aggregate field"- 选择聚合类型时"Field filtered"- 应用成员/标签/值筛选器时"Field sorted"- 通过 UI 对字段排序时"Edit pivot table"- 编辑透视表中的单元格时"Remove field"/"Add field"- 从分组栏中移除/添加字段时
单元格交互事件
| 事件 | 参数 | 触发时机 |
|---|---|---|
| aggregateCellInfo | rowHeaders、columnHeaders、value、valueField、aggregateType | 每个值单元格渲染时(可用于覆盖值或跳过格式设置) |
| cellClick | 单元格坐标、成员信息 | 用户点击透视单元格时 |
| cellDoubleClick | 单元格坐标、成员信息 | 用户双击透视单元格时 |
字段配置事件
| 事件 | 参数 | 触发时机 |
|---|---|---|
| calculatedFieldCreate | calculatedField、calculatedFieldSettings、fieldName、dataSourceSettings、cancel | 用户在对话框中创建/编辑计算字段时 |
导出事件
| 事件 | 参数 | 触发时机 |
|---|---|---|
| beforeExcelExport | dataSourceSettings、isCollapsedStateSaved | Excel 导出开始前 |
| excelExportComplete | 导出结果数据 | Excel 导出完成后 |
| beforePdfExport | dataSourceSettings、isCollapsedStateSaved | PDF 导出开始前 |
| pdfExportComplete | 导出结果数据 | PDF 导出完成后 |
| beforePrint | dataSourceSettings | 开始打印前 |
| printComplete | 打印结果 | 打印完成后 |
下钻与展开事件
| 事件 | 参数 | 触发时机 |
|---|---|---|
| drillThrough | 行/列标题、原始数据记录 | 用户发起穿透操作时 |
| beginDrillThrough | 单元格上下文、成员信息 | 穿透操作开始前(设置 args.cancel = true 可阻止操作) |
字段配置与分组栏事件
| 事件 | 参数 | 触发时机 |
|---|---|---|
| fieldDrop | 正在拖放的字段、目标轴(行/列/值/筛选器) | 将字段拖放到分组栏中以添加字段时 |
| fieldDragStart | 正在拖动的字段、源轴 | 从分组栏开始拖动字段时 |
| fieldRemove | 要移除的字段、源轴 | 从分组栏中移除字段时 |
| onFieldDropped | 已放置的字段、目标轴 | 字段成功放置后触发(类似于 fieldDrop,但在操作后触发) |
| aggregateMenuOpen | 字段、当前聚合类型 | 打开分组栏/字段列表中的聚合类型下拉菜单时 |
导出自定义事件
| 事件 | 参数 | 触发时机 |
|---|---|---|
| excelQueryCellInfo | 单元格数据、行/列信息、单元格类型 | Excel 导出期间的每个单元格(自定义单元格样式、值和格式) |
| excelHeaderQueryCellInfo | 标题单元格信息、行/列层级 | Excel 导出中的每个标题单元格(自定义标题样式) |
| pdfQueryCellInfo | 单元格数据、行/列信息、pdfCell | PDF 导出期间的每个单元格(自定义 PDF 单元格外观) |
| headerCellInfo | 标题单元格上下文、样式信息 | UI 中每次渲染标题单元格时(自定义标题外观) |
| queryCellInfo | 值单元格数据、样式、aggregateType | UI 中每次渲染值单元格时(自定义单元格外观、值和格式) |
事件用法示例:
<template>
<ejs-pivotview
:dataSourceSettings="dataSourceSettings"
@actionBegin="onActionBegin"
@actionComplete="onActionComplete"
@aggregateCellInfo="onAggregateCellInfo">
</ejs-pivotview>
</template>
<script setup>
const onActionBegin = (args) => {
if (args.actionName === 'Aggregate field') {
console.log('User changing aggregation for:', args.fieldInfo.name);
// Set args.cancel = true to prevent action
}
};
const onActionComplete = (args) => {
if (args.actionName === 'Field filtered') {
console.log('Filter applied successfully');
}
};
const onAggregateCellInfo = (args) => {
// Override cell value: args.value = customValue;
// Skip formatting: args.isFormatted = false;
};
</script>
开始使用
📄 阅读: references/getting-started.md
- 安装步骤和依赖项
- 设置基本的 PivotView
- 配置基础知识
- CSS 导入与主题设置 — 包括 Tailwind 3 单次导入主题包(
@syncfusion/ej2-tailwind3-theme) - 主题应用方法 — npm 主题包、CDN、CRG、Theme Studio
- 兼容 Vue 2 和 Vue 3
- 字段列表组件 - 用于动态配置字段的 UI
- 分组栏组件 - 用于内联字段整理和拖放
- 加载状态与指示器 - 管理数据加载期间的 UI 反馈
- 无障碍基础知识 - WCAG 合规性、键盘导航、屏幕阅读器
数据绑定与数据源
JSON 数据绑定
📄 阅读: references/data-binding.md
- 绑定本地 JSON 数据
- 使用带有 JsonAdaptor 的 DataManager
- 文件上传和 JSON 加载
- 本地与远程数据处理方式
- 服务端透视处理 - 对大型数据集进行后端聚合
- 复杂数据绑定模式 - 多数据源、实时更新、延迟加载
外部数据源
📄 阅读: references/connecting-to-data-source.md
- MySQL 数据库连接
- SQL Server 集成
- MongoDB 连接
- PostgreSQL、Oracle、Elasticsearch、Snowflake
- 创建用于检索数据的 Web API 控制器
OLAP(分析服务)
📄 阅读: references/olap.md
- SQL Server Analysis Services(SSAS)配置
- OLAP 字段命名约定
[Dimension].[Hierarchy] - 连接到 SSAS 多维数据集以进行多维分析
- 处理海量数据集(数百万行)
- OLAP 与 JSON 绑定对比
- 使用 OLAP 层级进行向下钻取
数据操作与格式设置
数据格式设置
📄 阅读: references/data-formatting.md
- 数字格式设置(货币、百分比、小数)
- 日期和时间值格式设置
- 自定义格式模式
- 格式设置配置
- 国际化与本地化 - 多语言支持、RTL、区域格式设置
- 无障碍样式 - 高对比度、适合色盲用户的配色、字体大小
条件格式
📄 阅读: references/conditional-formatting.md
- 启用条件格式功能
- 使用条件和运算符定义格式规则
- 根据单元格值应用样式(backgroundColor、color、fontFamily 等)
- 在 dataSourceSettings 中预定义规则
- 通过工具栏显示条件格式对话框
- 动态修改规则及其效果
数据整形与字段配置
📄 阅读: references/data-shaping.md
- 定义行、列和值
- 字段层级与嵌套
- 标题和字段组织
- 展开/折叠行为
- 配置最佳实践
行与列属性
📄 阅读: references/row-and-column.md
- 设置宽度和高度(像素、百分比、自动)
- 自定义行高
- 列宽设置
- 响应式尺寸调整
- 最小宽度保障
显示/隐藏总计
📄 阅读: references/show-hide-totals.md
- 控制总计的可见性
- 设置小计的位置和显示方式
- 配置汇总行
- 条件显示总计
数据分析与数据透视操作
筛选数据
📄 阅读: references/filtering.md
- 成员筛选(包含/排除特定成员、全选、搜索、排序)
- 标签筛选(包含、开头为、结尾为、介于等,适用于字符串、数字和日期)
- 值筛选(按汇总值范围筛选,包括 前 N 项 和 后 N 项)
- 通过
filterSettings以编程方式配置筛选 - 筛选对话框 UI 功能(搜索、全选、排序、将当前选项追加到筛选条件)
- OLAP 专用选项:
loadOnDemandInMemberEditor和levelCount - 使用
maxNodeLimitInMemberEditor优化大型数据集筛选 - 筛选相关事件:
memberFiltering、memberEditorOpen、actionBegin、actionComplete、actionFailure
排序字段与值
📄 阅读: references/sorting.md
- 成员排序(升序/降序)
- 值排序(按汇总值排序)
- 自定义排序(用户定义成员顺序)
- 字母数字排序(按数值或字母顺序)
- 排序设置配置
- 在复杂层级结构中进行多级排序
聚合与计算字段
📄 阅读: references/aggregation-and-calculated-fields.md
- 聚合类型(Sum、Average、Count、Min、Max 等)
- 百分比聚合(占总计的百分比、占行的百分比、占父级的百分比等)
- 比较聚合(差值、百分比差值)
- 运行总计和运行总计百分比(运行总计的累计百分比;仅客户端引擎支持)
- 自定义聚合下拉列表
- 隐藏聚合标签以简化 UI
- 计算字段和自定义公式
对数据分组
📄 阅读: references/grouping.md
- 数字分组(如 1-5、6-10 等范围)
- 日期分组(年、季度、月、周、日)
- 自定义分组(特定于业务的类别)
- 以编程方式配置分组
- 在同一数据透视表中进行多类型分组
- 分组 UI 操作和取消分组功能
编辑单元格数据
📄 阅读: references/editing.md
- 单元格编辑模式(Normal、Dialog、Batch、Command Columns)
- CRUD 操作(创建、读取、更新、删除)
- 编辑设置配置
- 安全确认对话框
- 编辑事件和验证
- 使用批处理模式进行批量编辑
- 数据网格编辑器配置 — 网格行为、选择、性能、分页
下钻与导航
下钻与上钻
📄 阅读: references/drill-down-up.md
- 展开/折叠层次结构数据
- 下钻位置和指定成员下钻
- 配置 expandAll 属性
- 仅展开特定字段
- 排除下钻成员
- 根据位置进行下钻
报表操作
📄 阅读: references/report-manipulation.md
- 动态修改报表
- 字段列表交互
- 分组栏操作
- 报表更新与刷新
- 加载预定义报表 - 报表模板、服务器端模板、初始报表加载
超链接
📄 阅读: references/hyperlink.md
- 在单元格中启用超链接
- 超链接设置配置
- 行标题超链接
- 列标题超链接
- 值单元格超链接
- 汇总单元格超链接
- 条件超链接规则
- 自定义 CSS 样式
可视化与布局
经典/表格布局
📄 阅读: references/classic-layout.md
- 表格布局的优势与设置
- 并排显示行字段
- 总计位置
- 小计位置
- 布局配置(
gridSettings.layout) - 限制与兼容性说明
数据透视图集成
📄 阅读: references/pivot-chart.md
- 数据透视图设置与显示模式
- 21 种以上图表类型(折线图、柱形图、面积图、条形图、气泡图、散点图等)
- 显示选项(仅网格、仅图表、两者)
- 主视图选择
- 图表自定义(系列、坐标轴、图例)
- 图表中的下钻
工具提示配置
📄 阅读: references/tooltip.md
- 使用
showTooltip属性启用/禁用工具提示 - 使用 HTML 和动态占位符自定义工具提示模板
- 模板占位符:
${rowHeaders}、${columnHeaders}、${valueField}、${aggregateType}、${value} - 带 CSS 样式的基础和高级模板示例
- 通过
chartSettings.tooltip设置图表专用工具提示 - 工具提示定位与移动设备注意事项
- 无障碍最佳实践与键盘支持
导出与工具栏
导出为 Excel 和 PDF
📄 阅读: references/export.md
- Excel 导出(.xlsx 格式)
- CSV 导出功能
- PDF 导出功能
- 调用导出方法
- 工具栏导出选项
- 导出时保留数据
工具栏与报表管理
📄 阅读: references/toolbar.md
- 使用
showToolbar属性启用工具栏 - 配置工具栏项目数组(New、Save、SaveAs、Load、Rename、Remove、Grid、Chart、Export、ConditionalFormatting 等)
- 报表生命周期回调:saveReport()、loadReport()、renameReport()、removeReport()
- 使用 fetchReport() 检索已保存的报表
- 自定义工具栏项目与样式
- 报表数据持久化与检索
- 尺寸与布局配置 - 组件尺寸、响应式行为、容器尺寸
状态与性能
状态持久化
📄 阅读: references/state-persistence.md
- 启用持久化(
enablePersistence) - 自动将状态保存到本地存储
- 跨会话保留布局
- 以编程方式保存和加载数据透视布局
getPersistData()和loadPersistData()方法- 自定义持久化工作流
性能最佳实践
📄 阅读: references/performance.md
- 对大型数据集使用虚拟滚动
- 分页实现
- 服务端数据透视引擎
- 数据压缩技术
- 延迟布局更新功能
- 排序优化
- 成员筛选性能
- 分组的影响与替代方案
快速入门示例
<template>
<div id="app">
<ejs-pivotview
:dataSourceSettings="dataSourceSettings"
:height="height"
:width="width"
:gridSettings="gridSettings"
:showFieldList="showFieldList">
</ejs-pivotview>
</div>
</template>
<script setup>
import { PivotViewComponent as EjsPivotview, FieldList } from "@syncfusion/ej2-vue-pivotview";
import { pivotData } from './pivotData.js';
import { provide } from "vue";
const dataSourceSettings = {
dataSource: pivotData,
expandAll: false,
columns: [{ name: 'Year', caption: 'Production Year' }, { name: 'Quarter' }],
rows: [{ name: 'Country' }, { name: 'Products' }],
values: [
{ name: 'Sold', caption: 'Units Sold' },
{ name: 'Amount', caption: 'Sold Amount' }
],
formatSettings: [{ name: 'Amount', format: 'C0' }],
filters: []
};
const height = '450px';
const width = '100%';
const showFieldList = true;
const gridSettings = { columnWidth: 120, layout: 'Compact' };
provide('pivotview', [FieldList]);
</script>
<style>
/* Tailwind 3 theme package — single import covers all Pivot Table dependencies */
@import "../node_modules/@syncfusion/ej2-tailwind3-theme/styles/pivotview/index.css";
</style>
常见模式
模式 1:汇总分析
定义 rows、columns 和 values,以创建数据的汇总摘要。
模式 2:下钻探索
使用 expandAll: false 和下钻图标,让用户探索层次数据。
模式 3:多源分析
使用 dataSourceSettings.type 绑定不同的数据源(JSON、OLAP、关系数据库)。
模式 4:可视化呈现
通过 displayOption: { view: 'Chart' } 启用数据透视图,以直观呈现数据。
模式 5:处理大型数据集
组合使用 virtualScrolling: true、allowPaging: true 或服务端引擎,以提升性能。
关键属性参考
| 属性 | 类型 | 用途 |
|---|---|---|
dataSourceSettings | 对象 | 定义数据源、字段和聚合规则 |
gridSettings | 对象 | 控制布局、尺寸和网格行为 |
displayOption | 对象 | 控制网格与图表的显示状态 |
chartSettings | 对象 | 配置图表类型和外观 |
hyperlinkSettings | 对象 | 启用并配置超链接 |
allowExcelExport | 布尔值 | 启用 Excel 导出功能 |
allowPaging | 布尔值 | 为大型数据集启用分页 |
enableVirtualization | 布尔值 | 启用虚拟滚动 |
enablePersistence | 布尔值 | 将组件状态保存在本地存储中 |
showFieldList | 布尔值 | 显示字段列表 UI |
showGroupingBar | 布尔值 | 显示分组栏 UI |
何时阅读各参考文档
- 需要设置 PivotView? →
getting-started.md - 需要绑定数据? →
data-binding.md或connecting-to-data-source.md - 需要配置字段/布局? →
data-shaping.md、row-and-column.md - 需要添加下钻? →
drill-down-up.md、report-manipulation.md - 需要显示图表? →
pivot-chart.md - 需要添加超链接? →
hyperlink.md - 需要导出数据? →
export.md、toolbar.md - 需要保存状态? →
state-persistence.md - 需要优化性能? →
performance.md
后续步骤
- 从 getting-started.md 开始,设置第一个 PivotView
- 使用 data-binding.md 或 connecting-to-data-source.md 绑定数据
- 使用 data-shaping.md 配置字段和布局
- 使用相关参考指南自定义外观和行为
- 根据需要实现导出和持久化功能
- 使用 performance.md 针对大型数据集优化性能