1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
| <template>
| <cl-crud :ref="setRefs('crud')"
| @load="onLoad">
| <el-row type="flex"
| align="middle">
| <!-- 刷新按钮 -->
| <cl-refresh-btn />
| <!-- 新增按钮 -->
| <cl-add-btn />
| <!-- 删除按钮 -->
| <cl-multi-delete-btn />
| <cl-flex1 />
| <!-- 关键字搜索 -->
| <cl-search-key />
| </el-row>
|
| <el-row>
| <!-- 数据表格 -->
| <cl-table :ref="setRefs('table')"
| v-bind="table" />
| </el-row>
|
| <el-row type="flex">
| <cl-flex1 />
| <!-- 分页控件 -->
| <cl-pagination />
| </el-row>
|
| <!-- 新增、编辑 -->
| <cl-upsert :ref="setRefs('upsert')"
| v-bind="upsert" />
| </cl-crud>
| </template>
|
| <script lang="ts">
| import { defineComponent, reactive } from "vue";
| import { CrudLoad, Upsert, Table } from "@cool-vue/crud/types";
| import { useCool } from "/@/cool";
|
| export default defineComponent({
| setup() {
| const { refs, setRefs, service } = useCool();
|
| // 新增、编辑配置
| const upsert = reactive<Upsert>({
| items: [
| {
| label: "姓名",
| prop: "name",
| component: {
| name: "el-input"
| }
| },
| {
| label: "名称",
| prop: "title",
| component: {
| name: "el-input"
| }
| },
| {
| label: "序号",
| prop: "price",
| component: {
| name: "el-input"
| }
| },
| {
| label: "分类",
| prop: "type",
| component: {
| name: "el-input"
| }
| }
| ]
| });
|
| // 表格配置
| const table = reactive<Table>({
| columns: [
| {
| type: "selection",
| align: "center"
| },
| {
| label: "姓名",
| prop: "name"
| },
| {
| label: "设备",
| prop: "title"
| },
| {
| label: "序号",
| prop: "price"
| },
| {
| label: "分类",
| prop: "type"
| },
| {
| label: "操作",
| type: "op"
| }
| ]
| });
|
| // crud 加载
| function onLoad({ ctx, app }: CrudLoad) {
| console.log("service", service);
|
| // 绑定 service
| ctx.service(service.huaneng.huaneng).done();
| app.refresh();
| }
|
| return {
| refs,
| setRefs,
| upsert,
| table,
| onLoad
| };
| }
| });
| </script>
|
|