fit2cloud-ui-plus 0.0.1-beta.2 → 0.0.1-beta.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/.editorconfig +14 -0
  2. package/BETA.MD +6 -0
  3. package/env.d.ts +13 -0
  4. package/examples/App.vue +65 -0
  5. package/examples/assets/github.png +0 -0
  6. package/examples/assets/hidden-code.png +0 -0
  7. package/examples/assets/iconfont/demo.css +539 -0
  8. package/examples/assets/iconfont/demo_index.html +257 -0
  9. package/examples/assets/iconfont/iconfont.css +27 -0
  10. package/examples/assets/iconfont/iconfont.js +1 -0
  11. package/examples/assets/iconfont/iconfont.json +30 -0
  12. package/examples/assets/iconfont/iconfont.ttf +0 -0
  13. package/examples/assets/iconfont/iconfont.woff +0 -0
  14. package/examples/assets/iconfont/iconfont.woff2 +0 -0
  15. package/examples/assets/logo.png +0 -0
  16. package/examples/components/CodeExample.vue +209 -0
  17. package/examples/components/DocumentTable.vue +98 -0
  18. package/examples/components/Markdown.vue +30 -0
  19. package/examples/layout/components/AppHeader.vue +35 -0
  20. package/examples/layout/components/Sidebar.vue +73 -0
  21. package/examples/layout/index.vue +55 -0
  22. package/examples/layout/layout.scss +75 -0
  23. package/examples/main.ts +25 -0
  24. package/examples/markdown/getting-started.md +38 -0
  25. package/examples/pages/filter-bar/demo/BaseFilterBar.vue +70 -0
  26. package/examples/pages/filter-bar/demo/SetConditionsDemo.vue +66 -0
  27. package/examples/pages/filter-bar/demo/SlotDemo.vue +77 -0
  28. package/examples/pages/filter-bar/index.vue +56 -0
  29. package/examples/pages/index.ts +11 -0
  30. package/examples/pages/read-write-switch/demo/BaseDemo.vue +30 -0
  31. package/examples/pages/read-write-switch/demo/CustomContentDemo.vue +28 -0
  32. package/examples/pages/read-write-switch/demo/InputRwSwitchDemo.vue +16 -0
  33. package/examples/pages/read-write-switch/demo/ReadSwitchDemo.vue +54 -0
  34. package/examples/pages/read-write-switch/demo/SelectRwSwitchDemo.vue +23 -0
  35. package/examples/pages/read-write-switch/demo/TableInnerEditDemo.vue +73 -0
  36. package/examples/pages/read-write-switch/demo/WriteSwitchDemo.vue +39 -0
  37. package/examples/pages/read-write-switch/index.vue +81 -0
  38. package/examples/pages/speed-dial/demo/BaseSpeedDial.vue +51 -0
  39. package/examples/pages/speed-dial/demo/SpeedDialCustom.vue +109 -0
  40. package/examples/pages/speed-dial/demo/SpeedDialPosition.vue +66 -0
  41. package/examples/pages/speed-dial/demo/SpeedDialTrigger.vue +64 -0
  42. package/examples/pages/speed-dial/index.vue +61 -0
  43. package/examples/pages/split-pane/demo/BaseSplit.vue +36 -0
  44. package/examples/pages/split-pane/demo/CustomResizer.vue +47 -0
  45. package/examples/pages/split-pane/demo/NestSplit.vue +34 -0
  46. package/examples/pages/split-pane/demo/ResizerType.vue +60 -0
  47. package/examples/pages/split-pane/index.vue +61 -0
  48. package/examples/pages/table/demo/BaseTable.vue +35 -0
  49. package/examples/pages/table/demo/DropdownColumn.vue +89 -0
  50. package/examples/pages/table/demo/DropdownColumnSlot.vue +92 -0
  51. package/examples/pages/table/demo/SaveSelectColumn.vue +41 -0
  52. package/examples/pages/table/demo/SelectColumn.vue +47 -0
  53. package/examples/pages/table/demo/TableOperations.vue +95 -0
  54. package/examples/pages/table/demo/TablePagination.vue +100 -0
  55. package/examples/pages/table/index.vue +89 -0
  56. package/examples/pages/tabs/demo/AddCloseTab.vue +73 -0
  57. package/examples/pages/tabs/index.vue +42 -0
  58. package/examples/router/doc-routes.ts +52 -0
  59. package/examples/router/index.ts +56 -0
  60. package/index.html +13 -0
  61. package/package.json +1 -5
  62. package/plugins/example-transform.ts +30 -0
  63. package/public/favicon.bmp +0 -0
  64. package/tsconfig.json +24 -0
  65. package/tsconfig.node.json +9 -0
  66. package/vite.config.ts +56 -0
@@ -0,0 +1,54 @@
1
+ <template>
2
+ <div>
3
+ <h3>
4
+ v-model + 事件 控制状态
5
+ </h3>
6
+ <div style="line-height: 40px;">
7
+ <fu-read-write-switch :data="input" v-model="write">
8
+ <el-input v-model="input" @blur="blur" @keydown.native="keydown"/>
9
+ </fu-read-write-switch>
10
+ </div>
11
+
12
+ <h3>
13
+ slot参数 + 事件 控制状态
14
+ </h3>
15
+ <div style="line-height: 40px;">
16
+ <fu-read-write-switch :data="input" v-slot:default="{read}">
17
+ <el-input v-model="input" @blur="read" @keydown.native="keydown2($event, read)"/>
18
+ </fu-read-write-switch>
19
+ </div>
20
+ </div>
21
+ </template>
22
+
23
+ <script>
24
+ export default {
25
+ name: "ReadWriteSwitchDemo",
26
+ data() {
27
+ return {
28
+ write: false,
29
+ input: "单击填写"
30
+ }
31
+ },
32
+ methods: {
33
+ change(obj) {
34
+ console.log(obj)
35
+ },
36
+ read() {
37
+ this.write = false
38
+ },
39
+ blur() {
40
+ this.read()
41
+ },
42
+ keydown(e) {
43
+ if (e.keyCode === 13) {
44
+ this.read()
45
+ }
46
+ },
47
+ keydown2(e, read) {
48
+ if (e.keyCode === 13) {
49
+ read()
50
+ }
51
+ }
52
+ }
53
+ }
54
+ </script>
@@ -0,0 +1,23 @@
1
+ <template>
2
+ <div>
3
+ <fu-select-rw-switch v-model="select">
4
+ <template #read>
5
+ <el-tag disable-transitions v-if="select === 'zh-CN'" type="danger">中文</el-tag>
6
+ <el-tag disable-transitions v-else>English</el-tag>
7
+ </template>
8
+ <el-option key="zh-CN" label="中文" value="zh-CN"/>
9
+ <el-option key="en-US" label="English" value="en-US"/>
10
+ </fu-select-rw-switch>
11
+ </div>
12
+ </template>
13
+
14
+ <script>
15
+ export default {
16
+ name: "SelectRwSwitchDemo",
17
+ data() {
18
+ return {
19
+ select: "zh-CN"
20
+ }
21
+ }
22
+ }
23
+ </script>
@@ -0,0 +1,73 @@
1
+ <template>
2
+ <div>
3
+ <fu-table :data="tableData">
4
+ <el-table-column type="selection"></el-table-column>
5
+ <el-table-column prop="name" label="姓名" min-width="180" fix></el-table-column>
6
+
7
+ <el-table-column prop="enable" label="语言(可行内编辑)">
8
+ <template #default="{row}">
9
+ <fu-select-rw-switch v-model="row.language">
10
+ <template #read>
11
+ <el-tag disable-transitions v-if="row.language === 'zh-CN'" type="danger">中文</el-tag>
12
+ <el-tag disable-transitions v-else>English</el-tag>
13
+ </template>
14
+ <el-option key="zh-CN" label="中文" value="zh-CN"/>
15
+ <el-option key="en-US" label="English" value="en-US"/>
16
+ </fu-select-rw-switch>
17
+ </template>
18
+ </el-table-column>
19
+
20
+ <el-table-column prop="address" label="地址(可行内编辑)">
21
+ <template #default="{row}">
22
+ <fu-input-rw-switch v-model="row.address"></fu-input-rw-switch>
23
+ </template>
24
+ </el-table-column>
25
+ <el-table-column prop="date" label="日期" min-width="180"></el-table-column>
26
+ </fu-table>
27
+ </div>
28
+ </template>
29
+
30
+ <script>
31
+ export default {
32
+ name: "TableInnerEditDemo",
33
+ data() {
34
+ return {
35
+ tableData: [
36
+ {
37
+ date: '2016-05-01',
38
+ name: '张三',
39
+ language: "zh-CN",
40
+ address: '北京朝阳区财富中心 1室'
41
+ }, {
42
+ date: '2016-05-02',
43
+ name: '张三',
44
+ language: "en-US",
45
+ address: '北京朝阳区财富中心 2室'
46
+ }, {
47
+ date: '2016-05-03',
48
+ name: '张三',
49
+ language: "zh-CN",
50
+ address: '北京朝阳区财富中心 3室'
51
+ }, {
52
+ date: '2016-05-04',
53
+ name: '张三',
54
+ language: "en-US",
55
+ address: '北京朝阳区财富中心 4室'
56
+ }, {
57
+ date: '2016-05-05',
58
+ name: '张三',
59
+ language: "zh-CN",
60
+ address: '北京朝阳区财富中心 5室'
61
+ }
62
+ ]
63
+ }
64
+ },
65
+ methods: {
66
+ blur(read) {
67
+ setTimeout(() => {
68
+ read()
69
+ }, 100)
70
+ }
71
+ }
72
+ }
73
+ </script>
@@ -0,0 +1,39 @@
1
+ <template>
2
+ <div>
3
+ <div style="line-height: 40px;">
4
+ <fu-read-write-switch :data="click" v-model="write">
5
+ <el-input v-model="click" @blur="write = false"/>
6
+ </fu-read-write-switch>
7
+ </div>
8
+
9
+ <div style="line-height: 40px;">
10
+ <fu-read-write-switch :data="dblclick" v-model="write2" write-trigger="dblclick">
11
+ <el-input v-model="dblclick" @blur="write2 = false"/>
12
+ </fu-read-write-switch>
13
+ </div>
14
+
15
+ <div style="line-height: 40px;">
16
+ <fu-read-write-switch :data="manual" v-model="write3" write-trigger="manual">
17
+ <el-input v-model="manual" @blur="write3 = false"/>
18
+ </fu-read-write-switch>
19
+ <el-button @click="write3 = true">点击按钮填写</el-button>
20
+ </div>
21
+ </div>
22
+
23
+ </template>
24
+
25
+ <script>
26
+ export default {
27
+ name: "WriteSwitchDemo",
28
+ data() {
29
+ return {
30
+ write: false,
31
+ write2: false,
32
+ write3: false,
33
+ click: "单击填写",
34
+ dblclick: "双击填写",
35
+ manual: "点击无法填写",
36
+ }
37
+ }
38
+ }
39
+ </script>
@@ -0,0 +1,81 @@
1
+ <template>
2
+ <div>
3
+ <!-- 一级标题 -->
4
+ <h1 class="component-h1">ReadWriteSwitch 读写切换</h1>
5
+ <!-- 一级描述 -->
6
+ <p>读状态与写状态切换,读状态默认显示只读文本,可以自定义读/写状态的内容</p>
7
+ <!--内容 -->
8
+ <div class="component-block" v-for="(item, index) in comList" :key="index">
9
+ <h2>{{ item.title }}</h2>
10
+ <p>{{ item.titleDesc }}</p>
11
+ <code-example :component="item.component" />
12
+ </div>
13
+ </div>
14
+ </template>
15
+
16
+ <script setup lang="ts">
17
+ import BaseDemo from "./demo/BaseDemo.vue";
18
+ import CustomContentDemo from "./demo/CustomContentDemo.vue";
19
+ import InputRwSwitchDemo from "./demo/InputRwSwitchDemo.vue";
20
+ import ReadSwitchDemo from "./demo/ReadSwitchDemo.vue";
21
+ import SelectRwSwitchDemo from "./demo/SelectRwSwitchDemo.vue";
22
+ import TableInnerEditDemo from "./demo/TableInnerEditDemo.vue";
23
+ import WriteSwitchDemo from "./demo/WriteSwitchDemo.vue";
24
+ const comList = [
25
+ {
26
+ title: "基本用法",
27
+ titleDesc: "读写状态切换,允许自定义读写内容、自定义读写状态控制,可用于Table 表内编辑等",
28
+ component: BaseDemo,
29
+ },
30
+ // {
31
+ // title: "写状态控制",
32
+ // titleDesc: "单击,双击,手动触发",
33
+ // component: WriteSwitchDemo,
34
+ // },
35
+ // {
36
+ // title: "读状态控制",
37
+ // titleDesc: "使用v-model或者使用slot的参数切换读状态",
38
+ // component: ReadSwitchDemo,
39
+ // },
40
+ // {
41
+ // title: "自定义读写内容",
42
+ // titleDesc: "v-slot:read 和 v-slot:default 分别为读内容和写内容",
43
+ // component: CustomContentDemo,
44
+ // },
45
+ // {
46
+ // title: "InputRwSwitch",
47
+ // titleDesc: "Input状态切换组件",
48
+ // component: InputRwSwitchDemo,
49
+ // description: `继承el-input的功能`
50
+ // },
51
+ // {
52
+ // title: "SelectRwSwitch",
53
+ // titleDesc: "Select状态切换组件",
54
+ // component: SelectRwSwitchDemo,
55
+ // description: `继承el-select的功能`
56
+ // },
57
+ // {
58
+ // title: "表格行内编辑",
59
+ // titleDesc: "使用 InputRwSwitch 和 SelectRwSwitch 实现行内编辑功能",
60
+ // component: TableInnerEditDemo,
61
+ // }
62
+ ]
63
+
64
+ </script>
65
+
66
+ <style lang="scss" scoped>
67
+ .component-block {
68
+ margin-top: 40px;
69
+
70
+ p {
71
+ font-size: 14px;
72
+ color: #5e6d82;
73
+ line-height: 1.5em;
74
+ }
75
+
76
+ h2 {
77
+ font-weight: 400;
78
+ color: #1f2f3d;
79
+ }
80
+ }
81
+ </style>
@@ -0,0 +1,51 @@
1
+ <demo>基本用法</demo>
2
+ <template>
3
+ <div class="speed-dial-demo">
4
+ <div>
5
+ <fu-speed-dial id="left" size="big" direction="left" :items="items" @click="click" />
6
+ </div>
7
+
8
+ <div>
9
+ <fu-speed-dial id="top" :items="items" @click="click" type="success" icon="el-icon-video-play"
10
+ active-icon="el-icon-video-pause" />
11
+ </div>
12
+
13
+ <div>
14
+ <fu-speed-dial icon="iconfont icon-money" id="right" size="medium" direction="right" type="warning" :items="items"
15
+ @click="click" />
16
+ </div>
17
+
18
+ <div>
19
+ <fu-speed-dial id="bottom" size="small" direction="bottom" type="danger" :items="items" @click="click" />
20
+ </div>
21
+ </div>
22
+ </template>
23
+
24
+ <script setup lang="ts">
25
+ const items = [
26
+ { title: "Item 1", click: clickItem },
27
+ { title: "Item 2", click: clickItem },
28
+ { title: "Item 3", click: clickItem, icon: "iconfont icon-huiyuan" },
29
+ { title: "Item 4", click: clickItem },
30
+ { title: "Item 5", click: clickItem },
31
+ ]
32
+
33
+ function click(obj, e) {
34
+ console.log(obj, e)
35
+ }
36
+ function clickItem(item, e) {
37
+ console.log(item, e)
38
+ }
39
+
40
+ </script>
41
+
42
+ <style lang="scss" scoped>
43
+ .speed-dial-demo {
44
+ display: flex;
45
+ align-items: center;
46
+
47
+ >div {
48
+ width: 25%;
49
+ }
50
+ }
51
+ </style>
@@ -0,0 +1,109 @@
1
+ <template>
2
+ <div class="speed-dial-demo">
3
+ <div>
4
+ <h4>
5
+ 默认
6
+ </h4>
7
+ <fu-speed-dial>
8
+ <fu-speed-dial-item :index="0" title="No.0" @click="clickItem"/>
9
+ <fu-speed-dial-item :index="1" title="No.1" @click="clickItem"/>
10
+ </fu-speed-dial>
11
+ </div>
12
+
13
+ <div>
14
+ <h4>
15
+ Items数组
16
+ </h4>
17
+ <fu-speed-dial :items="items"/>
18
+ </div>
19
+
20
+ <div>
21
+ <h4>
22
+ Slot
23
+ </h4>
24
+ <fu-speed-dial>
25
+ <fu-speed-dial-item :index="0" title="No.0" @click="clickItem" color="#222" bg-color="#DDD"
26
+ title-bg-color="#F1F1F1" title-color="#555"/>
27
+ <fu-speed-dial-item :index="1" title="No.1" @click="clickItem" button-class="custom-button"
28
+ title-class="custom-title"/>
29
+ </fu-speed-dial>
30
+ </div>
31
+
32
+ <div>
33
+ <h4>
34
+ Item Slot
35
+ </h4>
36
+ <fu-speed-dial ref="speed-dial">
37
+ <fu-speed-dial-item :index="0">
38
+ <el-button @click="clickItem({title: 'Item 1',index: 0, custom:true},$event)">Item 1</el-button>
39
+ </fu-speed-dial-item>
40
+
41
+ <fu-speed-dial-item :index="1">
42
+ <el-button @click="clickItem({title: 'Item 2',index: 1, custom:true})">Item 2</el-button>
43
+ </fu-speed-dial-item>
44
+ </fu-speed-dial>
45
+ </div>
46
+ </div>
47
+ </template>
48
+
49
+ <script>
50
+ const itemStyle = {
51
+ bgColor: "#DDD",
52
+ color: "#222",
53
+ titleBgColor: "#F1F1F1",
54
+ titleColor: "#555",
55
+ }
56
+
57
+ export default {
58
+ name: "BaseSpeedDial",
59
+ data() {
60
+ return {
61
+ items: [
62
+ {
63
+ title: "Item 1",
64
+ icon: "el-icon-edit",
65
+ click: this.clickItem,
66
+ ...itemStyle
67
+ },
68
+ {title: "Item 2", click: this.clickItem, ...itemStyle},
69
+ {title: "Item 3", click: this.clickItem, ...itemStyle},
70
+ {title: "Item 4", click: this.clickItem, ...itemStyle},
71
+ {title: "Item 5", click: this.clickItem, ...itemStyle},
72
+ ]
73
+ }
74
+ },
75
+ methods: {
76
+ click(obj, e) {
77
+ console.log(obj, e)
78
+ },
79
+ clickItem(item, e) {
80
+ if (item.custom) {
81
+ this.$refs["speed-dial"].close()
82
+ }
83
+ console.log(item, e)
84
+ }
85
+ }
86
+ }
87
+ </script>
88
+
89
+ <style lang="scss" scoped>
90
+ .speed-dial-demo {
91
+ display: flex;
92
+ align-items: center;
93
+
94
+ > div {
95
+ width: 25%;
96
+ }
97
+
98
+
99
+ ::v-deep(.custom-button) {
100
+ color: #222;
101
+ background-color: #DDD;
102
+ }
103
+
104
+ ::v-deep(.custom-title) {
105
+ color: #555;
106
+ background-color: #F1F1F1;
107
+ }
108
+ }
109
+ </style>
@@ -0,0 +1,66 @@
1
+ <template>
2
+ <div class="speed-dial-demo">
3
+ <div>
4
+ 拖拽:
5
+ <el-radio-group v-model="movable">
6
+ <el-radio :label="true">允许</el-radio>
7
+ <el-radio :label="false">禁止</el-radio>
8
+ </el-radio-group>
9
+ </div>
10
+ <div>
11
+ position:
12
+ <el-radio-group v-model="position">
13
+ <el-radio label="absolute">absolute</el-radio>
14
+ <el-radio label="fixed">fixed</el-radio>
15
+ </el-radio-group>
16
+ </div>
17
+
18
+ <div class="speed-dial-move">
19
+ <fu-speed-dial :position="position" bottom="calc(50% - 20px)" right="calc(50% - 20px)"
20
+ :movable="movable" :items="items" @click="click"/>
21
+ </div>
22
+ </div>
23
+ </template>
24
+
25
+ <script>
26
+ export default {
27
+ name: "SpeedDialPosition",
28
+ data() {
29
+ return {
30
+ position: "absolute",
31
+ movable: false,
32
+ items: [
33
+ {title: "Item 1", click: this.clickItem},
34
+ {title: "Item 2", click: this.clickItem},
35
+ {title: "Item 3", click: this.clickItem},
36
+ {title: "Item 4", click: this.clickItem},
37
+ {title: "Item 5", click: this.clickItem},
38
+ ]
39
+ }
40
+ },
41
+ methods: {
42
+ click(obj, e) {
43
+ console.log(obj, e)
44
+ },
45
+ clickItem(item, e) {
46
+ console.log(item, e)
47
+ }
48
+ },
49
+ }
50
+ </script>
51
+
52
+ <style lang="scss" scoped>
53
+ .speed-dial-demo {
54
+ width: 100%;
55
+
56
+ .speed-dial-move {
57
+ margin-top: 10px;
58
+ border: 1px #7c7c7c dashed;
59
+ position: relative;
60
+ width: 100%;
61
+ height: 100px;
62
+ }
63
+ }
64
+
65
+
66
+ </style>
@@ -0,0 +1,64 @@
1
+ <template>
2
+ <div class="speed-dial-demo">
3
+ <div>
4
+ <h4>默认设置</h4>
5
+ <fu-speed-dial :items="items"/>
6
+ </div>
7
+
8
+ <div>
9
+ <h4>item点击后不关闭</h4>
10
+ <fu-speed-dial direction="left" :items="items" :item-click-close="false"/>
11
+ </div>
12
+
13
+ <div>
14
+ <h4>点击空白处不关闭</h4>
15
+ <fu-speed-dial :items="items" :outside-close="false"/>
16
+ </div>
17
+
18
+ <div>
19
+ <h4>
20
+ 手动开关
21
+ <el-button size="small" class="fab-demo-manual" @click="toggle">
22
+ <span v-if="active">关闭</span>
23
+ <span v-else>打开</span>
24
+ </el-button>
25
+ </h4>
26
+
27
+ <fu-speed-dial :items="items" :manual="true" v-model="active"/>
28
+ </div>
29
+ </div>
30
+ </template>
31
+
32
+ <script>
33
+ export default {
34
+ name: "SpeedDialTrigger",
35
+ data() {
36
+ return {
37
+ active: false,
38
+ items: [
39
+ {title: "Item 1"},
40
+ {title: "Item 2"},
41
+ {title: "Item 3"},
42
+ {title: "Item 4"},
43
+ {title: "Item 5"},
44
+ ]
45
+ }
46
+ },
47
+ methods: {
48
+ toggle() {
49
+ this.active = !this.active;
50
+ },
51
+ }
52
+ }
53
+ </script>
54
+
55
+ <style lang="scss" scoped>
56
+ .speed-dial-demo {
57
+ display: flex;
58
+ align-items: center;
59
+
60
+ > div {
61
+ width: 25%;
62
+ }
63
+ }
64
+ </style>
@@ -0,0 +1,61 @@
1
+ <template>
2
+ <div>
3
+ <!-- 一级标题 -->
4
+ <h1 class="component-h1">SpeedDial 快速拨号</h1>
5
+ <!-- 一级描述 -->
6
+ <p>快速拨号,支持4个方向,支持固定位置,支持移动位置;图标支持iconfont;</p>
7
+ <!-- BaseTable内容 -->
8
+ <div class="component-block" v-for="(item, index) in comList" :key="index">
9
+ <h2>{{ item.title }}</h2>
10
+ <p>{{ item.titleDesc }}</p>
11
+ <code-example :description="item.description" :component="item.component" />
12
+ </div>
13
+ </div>
14
+ </template>
15
+
16
+ <script setup lang="ts">
17
+ import BaseSpeedDial from "./demo/BaseSpeedDial.vue";
18
+ import SpeedDialPosition from "./demo/SpeedDialPosition.vue";
19
+ import SpeedDialTrigger from "./demo/SpeedDialTrigger.vue";
20
+ import SpeedDialCustom from "./demo/SpeedDialCustom.vue";
21
+
22
+ const comList = [
23
+ {
24
+ title: "基本用法",
25
+ titleDesc: "可以设置方向,大小,主题,图标",
26
+ component: BaseSpeedDial,
27
+ description: `控制台查看click事件`
28
+ }, {
29
+ title: "定位方式",
30
+ titleDesc: "position 设置 absolute / fixed 可以固定位置,并且可以移动位置",
31
+ component: SpeedDialPosition,
32
+ description: `设置localKey,可以保存移动位置到localStorage`
33
+ }, {
34
+ title: "开关方式",
35
+ titleDesc: "",
36
+ component: SpeedDialTrigger,
37
+ description: `设置localKey,可以保存移动位置到localStorage`
38
+ }, {
39
+ title: "自定义内容",
40
+ titleDesc: "",
41
+ component: SpeedDialCustom,
42
+ }
43
+ ]
44
+ </script>
45
+
46
+ <style lang="scss" scoped>
47
+ .component-block {
48
+ margin-top: 40px;
49
+
50
+ p {
51
+ font-size: 14px;
52
+ color: #5e6d82;
53
+ line-height: 1.5em;
54
+ }
55
+
56
+ h2 {
57
+ font-weight: 400;
58
+ color: #1f2f3d;
59
+ }
60
+ }
61
+ </style>
@@ -0,0 +1,36 @@
1
+ <demo>基本用法</demo>
2
+ <template>
3
+ <div>
4
+ <el-divider content-position="left">水平分割</el-divider>
5
+ <div class="demo-split">
6
+ <fu-split-pane left="200px">
7
+ <template v-slot:left>
8
+ Left
9
+ </template>
10
+ <template v-slot:right>
11
+ Right
12
+ </template>
13
+ </fu-split-pane>
14
+ </div>
15
+ <el-divider content-position="left">垂直分割</el-divider>
16
+ <div class="demo-split">
17
+ <fu-split-pane top="40%" direction="vertical">
18
+ <template v-slot:top>
19
+ Top
20
+ </template>
21
+ <template v-slot:bottom>
22
+ Bottom
23
+ </template>
24
+ </fu-split-pane>
25
+ </div>
26
+ </div>
27
+ </template>
28
+
29
+ <script setup lang="ts">
30
+ </script>
31
+ <style lang="scss" scoped>
32
+ .demo-split {
33
+ height: 200px;
34
+ border: 1px solid #dcdee2;
35
+ }
36
+ </style>