Files
aurora-admin/site/examples/mergedcelltable.json
T

37 lines
6.9 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"slug": "mergedcelltable",
"mode": "single",
"examples": [
{
"id": "mergedcelltable-ex-1",
"title": "基础用法",
"titleSrc": "",
"desc": "",
"html": "<div class=\"kole-page\">\n <h2 class=\"kole-h2\">MergedCellTable 合并单元格表格</h2>\n <p class=\"kole-desc\">按字段纵向合并相同内容单元格,合并后垂直居中,适用于报表 / 统计表。</p>\n <div class=\"kole-demo\">\n <div class=\"kole-demo__title\">部门销售额报表(部门列合并)</div>\n <table class=\"kole-mergetable\" id=\"mergetable\">\n <thead>\n <tr>\n <th>部门</th>\n <th>季度</th>\n <th>销售额(万)</th>\n <th>负责人</th>\n </tr>\n </thead>\n <tbody></tbody>\n </table>\n </div>\n</div>",
"preview": {
"show": [
[
0
]
],
"hide": [],
"mode": "single"
},
"previewSafe": true,
"previewUnsafeReasons": [],
"source": "curated",
"code": {
"html": "<h2>MergedCellTable 合并单元格表格</h2>\n<p>按字段纵向合并相同内容单元格,合并后垂直居中,适用于报表 / 统计表。</p>\n<div>部门销售额报表(部门列合并)</div>\n<table class=\"kole-mergetable\" id=\"mergetable\">\n <thead>\n <tr>\n <th>部门</th>\n <th>季度</th>\n <th>销售额(万)</th>\n <th>负责人</th>\n </tr>\n </thead>\n <tbody></tbody>\n</table>",
"jsx": "import { KoleMergedCellTable } from 'kole-ui/react';\n\nconst DATA = [\n { dept: '华东大区', q: 'Q1', sale: 120, owner: '王伟' },\n { dept: '华东大区', q: 'Q2', sale: 135, owner: '王伟' },\n { dept: '华东大区', q: 'Q3', sale: 150, owner: '王伟' },\n { dept: '华南大区', q: 'Q1', sale: 90, owner: '李娜' },\n { dept: '华南大区', q: 'Q2', sale: 110, owner: '李娜' },\n { dept: '华北大区', q: 'Q1', sale: 80, owner: '张强' }\n];\n\nconst COLUMNS = [\n { key: 'dept', title: '部门', merge: true },\n { key: 'q', title: '季度' },\n { key: 'sale', title: '销售额(万)' },\n { key: 'owner', title: '负责人' }\n];\n\nexport default function DeptReport() {\n return <KoleMergedCellTable data={DATA} columns={COLUMNS} />;\n}",
"vue3": "<template>\n <KoleMergedCellTable :data=\"DATA\" :columns=\"COLUMNS\" />\n</template>\n\n<script setup>\nimport { KoleMergedCellTable } from 'kole-ui/vue3';\n\nconst DATA = [\n { dept: '华东大区', q: 'Q1', sale: 120, owner: '王伟' },\n { dept: '华东大区', q: 'Q2', sale: 135, owner: '王伟' },\n { dept: '华东大区', q: 'Q3', sale: 150, owner: '王伟' },\n { dept: '华南大区', q: 'Q1', sale: 90, owner: '李娜' },\n { dept: '华南大区', q: 'Q2', sale: 110, owner: '李娜' },\n { dept: '华北大区', q: 'Q1', sale: 80, owner: '张强' }\n];\n\nconst COLUMNS = [\n { key: 'dept', title: '部门', merge: true },\n { key: 'q', title: '季度' },\n { key: 'sale', title: '销售额(万)' },\n { key: 'owner', title: '负责人' }\n];\n</script>",
"vue2": "<template>\n <KoleMergedCellTable :data=\"DATA\" :columns=\"COLUMNS\" />\n</template>\n\n<script>\nimport { KoleMergedCellTable } from 'kole-ui/vue2';\n\nexport default {\n components: { KoleMergedCellTable },\n data() {\n return {\n DATA: [\n { dept: '华东大区', q: 'Q1', sale: 120, owner: '王伟' },\n { dept: '华东大区', q: 'Q2', sale: 135, owner: '王伟' },\n { dept: '华东大区', q: 'Q3', sale: 150, owner: '王伟' },\n { dept: '华南大区', q: 'Q1', sale: 90, owner: '李娜' },\n { dept: '华南大区', q: 'Q2', sale: 110, owner: '李娜' },\n { dept: '华北大区', q: 'Q1', sale: 80, owner: '张强' }\n ],\n COLUMNS: [\n { key: 'dept', title: '部门', merge: true },\n { key: 'q', title: '季度' },\n { key: 'sale', title: '销售额(万)' },\n { key: 'owner', title: '负责人' }\n ]\n };\n }\n};\n</script>",
"tsx": "import { KoleMergedCellTable } from 'kole-ui/react';\n\nconst DATA = [\n { dept: '华东大区', q: 'Q1', sale: 120, owner: '王伟' },\n { dept: '华东大区', q: 'Q2', sale: 135, owner: '王伟' },\n { dept: '华东大区', q: 'Q3', sale: 150, owner: '王伟' },\n { dept: '华南大区', q: 'Q1', sale: 90, owner: '李娜' },\n { dept: '华南大区', q: 'Q2', sale: 110, owner: '李娜' },\n { dept: '华北大区', q: 'Q1', sale: 80, owner: '张强' }\n];\n\nconst COLUMNS = [\n { key: 'dept', title: '部门', merge: true },\n { key: 'q', title: '季度' },\n { key: 'sale', title: '销售额(万)' },\n { key: 'owner', title: '负责人' }\n];\n\nexport default function DeptReport(): JSX.Element {\n return <KoleMergedCellTable data={DATA} columns={COLUMNS} />;\n}",
"vue3ts": "<template>\n\n <KoleMergedCellTable :data=\"DATA\" :columns=\"COLUMNS\" />\n</template>\n\n<script setup lang=\"ts\">\nimport { KoleMergedCellTable } from 'kole-ui/vue3';\n\nconst demoTitle = ref<string>('基础用法');\nconst DATA = [\n { dept: '华东大区', q: 'Q1', sale: 120, owner: '王伟' },\n { dept: '华东大区', q: 'Q2', sale: 135, owner: '王伟' },\n { dept: '华东大区', q: 'Q3', sale: 150, owner: '王伟' },\n { dept: '华南大区', q: 'Q1', sale: 90, owner: '李娜' },\n { dept: '华南大区', q: 'Q2', sale: 110, owner: '李娜' },\n { dept: '华北大区', q: 'Q1', sale: 80, owner: '张强' }\n];\n\nconst COLUMNS = [\n { key: 'dept', title: '部门', merge: true },\n { key: 'q', title: '季度' },\n { key: 'sale', title: '销售额(万)' },\n { key: 'owner', title: '负责人' }\n];\n</script>",
"vue2ts": "<template>\n\n <KoleMergedCellTable :data=\"DATA\" :columns=\"COLUMNS\" />\n</template>\n\n<script lang=\"ts\">\nimport Vue from 'vue';\nimport { KoleMergedCellTable } from 'kole-ui/vue2';\n\nexport default {\n components: { KoleMergedCellTable },\n data(): Record<string, unknown> {\n return {\n DATA: [\n { dept: '华东大区', q: 'Q1', sale: 120, owner: '王伟' },\n { dept: '华东大区', q: 'Q2', sale: 135, owner: '王伟' },\n { dept: '华东大区', q: 'Q3', sale: 150, owner: '王伟' },\n { dept: '华南大区', q: 'Q1', sale: 90, owner: '李娜' },\n { dept: '华南大区', q: 'Q2', sale: 110, owner: '李娜' },\n { dept: '华北大区', q: 'Q1', sale: 80, owner: '张强' }\n ],\n COLUMNS: [\n { key: 'dept', title: '部门', merge: true },\n { key: 'q', title: '季度' },\n { key: 'sale', title: '销售额(万)' },\n { key: 'owner', title: '负责人' }\n ]\n };\n }\n};\n</script>"
},
"notes": "依据 frameworks/MergedCellTable.html L25-32 的六行 data(dept/q/sale/owner)、L18 表头「部门/季度/销售额(万)/负责人」与 L36-43 连续相同 dept 算 rowspan;列定义取 MergedCellTable.jsx L24-27 的 {key,title} 与 L6 columns.filter(c => c.merge) 的合并开关、L37 rowSpan。"
}
],
"curated": true
}