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
| <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: []
| });
|
| // 表格配置
| const table = reactive<Table>({
| columns: []
| });
|
| // crud 加载
| function onLoad({ ctx, app }: CrudLoad) {
| // 绑定 service
| ctx.service(service.business.basedeviceinfo).done();
| app.refresh();
| }
|
| return {
| refs,
| setRefs,
| upsert,
| table,
| onLoad
| };
| }
| });
| </script>
|
|