vue-super-crud 1.7.1 → 1.7.4

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 (273) hide show
  1. package/README.md +42 -10
  2. package/lib/index.css +1 -1
  3. package/lib/super-crud.min.js +2 -2
  4. package/package.json +21 -16
  5. package/src/config/common.js +2 -1
  6. package/src/config/crud.js +3 -3
  7. package/src/index.js +4 -0
  8. package/src/template/formatData.js +75 -87
  9. package/.browserslistrc +0 -3
  10. package/.versionrc.json +0 -36
  11. package/CHANGELOG.md +0 -232
  12. package/babel.config.js +0 -12
  13. package/build/alias.js +0 -10
  14. package/build/build.js +0 -52
  15. package/build/config.js +0 -70
  16. package/deploy.bat +0 -14
  17. package/docs/.vuepress/components/button/base.vue +0 -88
  18. package/docs/.vuepress/components/common/code-format.vue +0 -331
  19. package/docs/.vuepress/components/commonConfig/presetCodeTemplate/base.vue +0 -68
  20. package/docs/.vuepress/components/commonConfig/presetCodeTemplate/customParams.vue +0 -73
  21. package/docs/.vuepress/components/commonConfig/renderType/component.vue +0 -160
  22. package/docs/.vuepress/components/commonConfig/renderType/formatter.vue +0 -49
  23. package/docs/.vuepress/components/commonConfig/renderType/render.vue +0 -91
  24. package/docs/.vuepress/components/commonConfig/renderType/slot.vue +0 -63
  25. package/docs/.vuepress/components/crud/baseUse/baseUse.vue +0 -98
  26. package/docs/.vuepress/components/crud/baseUse/columnAction.vue +0 -72
  27. package/docs/.vuepress/components/crud/baseUse/columnWidth.vue +0 -107
  28. package/docs/.vuepress/components/crud/baseUse/handleRow.vue +0 -65
  29. package/docs/.vuepress/components/crud/baseUse/height.vue +0 -82
  30. package/docs/.vuepress/components/crud/baseUse/index.vue +0 -54
  31. package/docs/.vuepress/components/crud/baseUse/loading.vue +0 -70
  32. package/docs/.vuepress/components/crud/baseUse/pagination.vue +0 -108
  33. package/docs/.vuepress/components/crud/baseUse/selection.vue +0 -114
  34. package/docs/.vuepress/components/crud/baseUse/summaryMethod.vue +0 -118
  35. package/docs/.vuepress/components/crud/baseUse/title.vue +0 -54
  36. package/docs/.vuepress/components/crud/baseUse/toolbar.vue +0 -69
  37. package/docs/.vuepress/components/crud/buttons/common.vue +0 -115
  38. package/docs/.vuepress/components/crud/buttons/fast.vue +0 -82
  39. package/docs/.vuepress/components/crud/contextMenu/base.vue +0 -72
  40. package/docs/.vuepress/components/crud/copy.vue +0 -52
  41. package/docs/.vuepress/components/crud/crudEvents/api.vue +0 -157
  42. package/docs/.vuepress/components/crud/crudEvents/deleteTip.vue +0 -93
  43. package/docs/.vuepress/components/crud/crudEvents/events.vue +0 -188
  44. package/docs/.vuepress/components/crud/dataSort/base.vue +0 -142
  45. package/docs/.vuepress/components/crud/genDynamicColumns/base.vue +0 -53
  46. package/docs/.vuepress/components/crud/genDynamicColumns/dynamicAndFixed.vue +0 -111
  47. package/docs/.vuepress/components/crud/genDynamicColumns/treeDynamic.vue +0 -68
  48. package/docs/.vuepress/components/crud/handleBar/handleRow.vue +0 -65
  49. package/docs/.vuepress/components/crud/handleBar/toolbar.vue +0 -69
  50. package/docs/.vuepress/components/crud/renderType/1.vue +0 -57
  51. package/docs/.vuepress/components/crud/renderType/2.vue +0 -63
  52. package/docs/.vuepress/components/crud/renderType/3.vue +0 -105
  53. package/docs/.vuepress/components/crud/renderType/5.vue +0 -91
  54. package/docs/.vuepress/components/crud/search/1.vue +0 -90
  55. package/docs/.vuepress/components/crud/search/2.vue +0 -78
  56. package/docs/.vuepress/components/crud/search/3.vue +0 -107
  57. package/docs/.vuepress/components/crud/search/base.vue +0 -123
  58. package/docs/.vuepress/components/crud/search/localSearch.vue +0 -124
  59. package/docs/.vuepress/components/crud/search/special.vue +0 -148
  60. package/docs/.vuepress/components/crud/selection/events.vue +0 -47
  61. package/docs/.vuepress/components/crud/selection/pagination.vue +0 -94
  62. package/docs/.vuepress/components/crud/selection/singleSelection.vue +0 -64
  63. package/docs/.vuepress/components/crud/span/base.vue +0 -69
  64. package/docs/.vuepress/components/crud/span/special.vue +0 -75
  65. package/docs/.vuepress/components/crud/summary/base.vue +0 -99
  66. package/docs/.vuepress/components/crud/tableEdit/addDeleteBtn.vue +0 -174
  67. package/docs/.vuepress/components/crud/tableEdit/cellEdit.vue +0 -194
  68. package/docs/.vuepress/components/crud/tableEdit/controlEdit.vue +0 -219
  69. package/docs/.vuepress/components/crud/tableEdit/dialog.vue +0 -172
  70. package/docs/.vuepress/components/crud/tableEdit/free.vue +0 -88
  71. package/docs/.vuepress/components/crud/tableEdit/freeColumn.vue +0 -82
  72. package/docs/.vuepress/components/crud/tableEdit/methods.vue +0 -154
  73. package/docs/.vuepress/components/crud/tableEdit/rowAction.vue +0 -107
  74. package/docs/.vuepress/components/crud/tableEdit/rowBatch.vue +0 -116
  75. package/docs/.vuepress/components/crud/tableEdit/rowClick.vue +0 -98
  76. package/docs/.vuepress/components/crud/validate/base.vue +0 -122
  77. package/docs/.vuepress/components/crud/validate/custom.vue +0 -82
  78. package/docs/.vuepress/components/crud/validate/regulars.vue +0 -88
  79. package/docs/.vuepress/components/crud/validate/relation.vue +0 -91
  80. package/docs/.vuepress/components/crud/validate/tree.vue +0 -82
  81. package/docs/.vuepress/components/dialog/baseUse/base.vue +0 -92
  82. package/docs/.vuepress/components/dialog/baseUse/beforeConfirm.vue +0 -78
  83. package/docs/.vuepress/components/dialog/baseUse/control.vue +0 -79
  84. package/docs/.vuepress/components/dialog/baseUse/drawer.vue +0 -59
  85. package/docs/.vuepress/components/dialog/baseUse/footer.vue +0 -87
  86. package/docs/.vuepress/components/dialog/baseUse/insertSlot.vue +0 -79
  87. package/docs/.vuepress/components/dict/DictLinkage.vue +0 -91
  88. package/docs/.vuepress/components/dict/baseUse.vue +0 -72
  89. package/docs/.vuepress/components/dict/component.vue +0 -82
  90. package/docs/.vuepress/components/dict/localDict.vue +0 -68
  91. package/docs/.vuepress/components/form/baseUse/base.vue +0 -48
  92. package/docs/.vuepress/components/form/baseUse/dataFormat.vue +0 -92
  93. package/docs/.vuepress/components/form/baseUse/deep.vue +0 -57
  94. package/docs/.vuepress/components/form/baseUse/gridLayout.vue +0 -47
  95. package/docs/.vuepress/components/form/baseUse/group.vue +0 -66
  96. package/docs/.vuepress/components/form/baseUse/hidden.vue +0 -40
  97. package/docs/.vuepress/components/form/baseUse/inlineLayout.vue +0 -48
  98. package/docs/.vuepress/components/form/baseUse/label.vue +0 -51
  99. package/docs/.vuepress/components/form/baseUse/tooltip.vue +0 -40
  100. package/docs/.vuepress/components/form/baseUse/validate.vue +0 -52
  101. package/docs/.vuepress/components/form/detail/base.vue +0 -78
  102. package/docs/.vuepress/components/form/detail/border.vue +0 -90
  103. package/docs/.vuepress/components/form/detail/singleDetail.vue +0 -72
  104. package/docs/.vuepress/components/formatData/baseUse.vue +0 -131
  105. package/docs/.vuepress/components/mock/index.js +0 -347
  106. package/docs/.vuepress/components/mockData/custom.vue +0 -69
  107. package/docs/.vuepress/components/mockData/example.vue +0 -290
  108. package/docs/.vuepress/components/positionSlot/base.vue +0 -24
  109. package/docs/.vuepress/components/positionSlot/form.vue +0 -71
  110. package/docs/.vuepress/components/positionSlot/table.vue +0 -85
  111. package/docs/.vuepress/components/tabs/base.vue +0 -57
  112. package/docs/.vuepress/components/temp.js +0 -195
  113. package/docs/.vuepress/config.js +0 -146
  114. package/docs/.vuepress/enhanceApp.js +0 -142
  115. package/docs/.vuepress/public/favicon.ico +0 -0
  116. package/docs/.vuepress/public/super.png +0 -0
  117. package/docs/.vuepress/styles/index.styl +0 -25
  118. package/docs/.vuepress/styles/palette.styl +0 -6
  119. package/docs/README.md +0 -14
  120. package/docs/guide/button/base.md +0 -31
  121. package/docs/guide/commonConfig/jsx.md +0 -166
  122. package/docs/guide/commonConfig/presetCodeTemplate.md +0 -68
  123. package/docs/guide/commonConfig/renderType.md +0 -181
  124. package/docs/guide/crud/baseUse.md +0 -120
  125. package/docs/guide/crud/buttons.md +0 -18
  126. package/docs/guide/crud/config.md +0 -217
  127. package/docs/guide/crud/contextMenu.md +0 -18
  128. package/docs/guide/crud/dataSort.md +0 -66
  129. package/docs/guide/crud/genDynamicColumns.md +0 -145
  130. package/docs/guide/crud/handleBar.md +0 -26
  131. package/docs/guide/crud/renderType.md +0 -4
  132. package/docs/guide/crud/search.md +0 -150
  133. package/docs/guide/crud/selection.md +0 -73
  134. package/docs/guide/crud/span.md +0 -98
  135. package/docs/guide/crud/summary.md +0 -167
  136. package/docs/guide/crud/tableEdit.md +0 -377
  137. package/docs/guide/crud/validate.md +0 -158
  138. package/docs/guide/dialog/baseUse.md +0 -81
  139. package/docs/guide/dict/baseUse.md +0 -174
  140. package/docs/guide/dict/component.md +0 -88
  141. package/docs/guide/dict/config.md +0 -44
  142. package/docs/guide/form/baseUse.md +0 -142
  143. package/docs/guide/form/detail.md +0 -38
  144. package/docs/guide/formatData/baseUse.md +0 -98
  145. package/docs/guide/formatData/config.md +0 -142
  146. package/docs/guide/mockData/base.md +0 -26
  147. package/docs/guide/positionSlot/base.md +0 -41
  148. package/docs/guide/question/base.md +0 -44
  149. package/docs/guide/start/base.md +0 -30
  150. package/docs/guide/tabs/base.md +0 -63
  151. package/examples/App.vue +0 -52
  152. package/examples/Layout/components/AppMain.vue +0 -40
  153. package/examples/Layout/components/Item.vue +0 -29
  154. package/examples/Layout/components/Link.vue +0 -44
  155. package/examples/Layout/components/SidebarItem.vue +0 -93
  156. package/examples/Layout/index.vue +0 -69
  157. package/examples/assets/logo.png +0 -0
  158. package/examples/favicon.ico +0 -0
  159. package/examples/index.html +0 -18
  160. package/examples/main.js +0 -54
  161. package/examples/router/index.js +0 -140
  162. package/examples/store/index.js +0 -0
  163. package/examples/styles/index.scss +0 -63
  164. package/examples/styles/sidebar.scss +0 -226
  165. package/examples/styles/transition.scss +0 -48
  166. package/examples/styles/variables.scss +0 -25
  167. package/examples/views/crud/base.vue +0 -68
  168. package/examples/views/crud/handleRow.vue +0 -84
  169. package/examples/views/crud/search.vue +0 -116
  170. package/examples/views/dashboard/index.vue +0 -244
  171. package/examples/views/dashboard/index1.vue +0 -234
  172. package/examples/views/dashboard/test.vue +0 -9
  173. package/examples/views/formTest/index.vue +0 -168
  174. package/examples/views/nested/menu1/index.vue +0 -7
  175. package/examples/views/nested/menu1/menu1-1/index.vue +0 -7
  176. package/examples/views/nested/menu1/menu1-2/index.vue +0 -7
  177. package/examples/views/nested/menu1/menu1-2/menu1-2-1/index.vue +0 -5
  178. package/examples/views/nested/menu1/menu1-2/menu1-2-2/index.vue +0 -5
  179. package/examples/views/nested/menu1/menu1-3/index.vue +0 -5
  180. package/examples/views/nested/menu2/index.vue +0 -5
  181. package/gulpfile.js +0 -84
  182. package/packages/button/index.vue +0 -189
  183. package/packages/core/components/comp.vue +0 -223
  184. package/packages/core/components/position.vue +0 -135
  185. package/packages/core/components/render.vue +0 -460
  186. package/packages/core/configManager.js +0 -302
  187. package/packages/core/create.js +0 -8
  188. package/packages/core/defaultRender.js +0 -64
  189. package/packages/core/dict/global.js +0 -10
  190. package/packages/core/dict/index.js +0 -432
  191. package/packages/core/dict/mixin.js +0 -94
  192. package/packages/core/event.js +0 -60
  193. package/packages/core/index.js +0 -6
  194. package/packages/core/init.js +0 -122
  195. package/packages/core/mock/genConfig.js +0 -228
  196. package/packages/core/mock/genData.js +0 -422
  197. package/packages/core/mock/index.js +0 -4
  198. package/packages/core/rules.js +0 -111
  199. package/packages/crud/column.vue +0 -205
  200. package/packages/crud/columnAction.vue +0 -207
  201. package/packages/crud/columnCell.vue +0 -146
  202. package/packages/crud/defaultColumn.vue +0 -130
  203. package/packages/crud/drawerColumn.vue +0 -225
  204. package/packages/crud/form.vue +0 -69
  205. package/packages/crud/index.vue +0 -564
  206. package/packages/crud/menuBar.vue +0 -298
  207. package/packages/crud/mixins/cacheHandler.js +0 -36
  208. package/packages/crud/mixins/calcColumnWidth.js +0 -79
  209. package/packages/crud/mixins/calcHeight.js +0 -105
  210. package/packages/crud/mixins/columnHandler.js +0 -128
  211. package/packages/crud/mixins/contextMenu.js +0 -98
  212. package/packages/crud/mixins/dataProcessor.js +0 -202
  213. package/packages/crud/mixins/dialog.js +0 -109
  214. package/packages/crud/mixins/excelHandler.js +0 -150
  215. package/packages/crud/mixins/exposeMethods.js +0 -107
  216. package/packages/crud/mixins/generateDynamicColumns.js +0 -250
  217. package/packages/crud/mixins/props.js +0 -38
  218. package/packages/crud/mixins/searchHandler.js +0 -151
  219. package/packages/crud/mixins/select.js +0 -359
  220. package/packages/crud/mixins/spanMethod.js +0 -288
  221. package/packages/crud/mixins/summary.js +0 -177
  222. package/packages/crud/mixins/tableEdit.js +0 -547
  223. package/packages/crud/mixins/validate.js +0 -219
  224. package/packages/crud/pagination.vue +0 -110
  225. package/packages/crud/search.vue +0 -119
  226. package/packages/crud/searchHeader.vue +0 -231
  227. package/packages/crud/selectBanner.vue +0 -138
  228. package/packages/crud/utils/EditState.js +0 -319
  229. package/packages/crud/utils/excelExport.js +0 -112
  230. package/packages/crud/utils/excelImport.js +0 -112
  231. package/packages/crud/utils/index.js +0 -98
  232. package/packages/dialog/dialog.js +0 -233
  233. package/packages/dialog/dialog.vue +0 -15
  234. package/packages/dialog/index.js +0 -22
  235. package/packages/dict/cascadeFormat.vue +0 -179
  236. package/packages/dict/dateFormat.vue +0 -40
  237. package/packages/dict/form/cascade.vue +0 -61
  238. package/packages/dict/form/checkbox.vue +0 -90
  239. package/packages/dict/form/extendMethod.js +0 -22
  240. package/packages/dict/form/input-base.js +0 -31
  241. package/packages/dict/form/input.js +0 -20
  242. package/packages/dict/form/radio.vue +0 -69
  243. package/packages/dict/form/select.vue +0 -118
  244. package/packages/dict/form/switch.vue +0 -75
  245. package/packages/dict/valueFormat.vue +0 -188
  246. package/packages/directive/dialog/drag.js +0 -86
  247. package/packages/directive/dialog/dragSize.js +0 -42
  248. package/packages/directive/index.js +0 -9
  249. package/packages/directive/insertSlot.js +0 -10
  250. package/packages/form/contextMenu.js +0 -192
  251. package/packages/form/draftDrawer.vue +0 -391
  252. package/packages/form/formAction.vue +0 -97
  253. package/packages/form/formItem.vue +0 -259
  254. package/packages/form/index.vue +0 -451
  255. package/packages/form/props.js +0 -15
  256. package/packages/grid/cell.vue +0 -65
  257. package/packages/grid/index.vue +0 -130
  258. package/packages/group/index.vue +0 -96
  259. package/packages/tabs/index.vue +0 -290
  260. package/packages/tooltip/index.js +0 -9
  261. package/packages/tooltip/tooltip.vue +0 -32
  262. package/packages/tooltip/tooltipComponent.js +0 -38
  263. package/packages/verifyInput/index.vue +0 -131
  264. package/styles/button.scss +0 -3
  265. package/styles/crud.scss +0 -425
  266. package/styles/dialog.scss +0 -95
  267. package/styles/form.scss +0 -532
  268. package/styles/group.scss +0 -78
  269. package/styles/index.scss +0 -94
  270. package/styles/tabs.scss +0 -139
  271. package/styles/verifyInput.scss +0 -56
  272. package/vue-jsx-sync.js +0 -90
  273. package/vue.config.js +0 -54
@@ -1,107 +0,0 @@
1
- <template>
2
- <div>
3
- <sc-crud
4
- :search.sync="searchForm"
5
- :options="options"
6
- :data="data"
7
- @edit="edit"
8
- @save="save"
9
- @cancel="cancel"
10
- >
11
- </sc-crud>
12
- </div>
13
- </template>
14
-
15
- <script>
16
- export default {
17
- data() {
18
- return {
19
- searchForm: {},
20
- data: [
21
- {
22
- id: 1,
23
- name: "张三",
24
- gender: "男",
25
- age: 20,
26
- city: "北京",
27
- date: "2021-01-01",
28
- },
29
- {
30
- id: 2,
31
- name: "李四",
32
- gender: "女",
33
- age: 21,
34
- city: "上海",
35
- date: "2021-01-02",
36
- },
37
- {
38
- id: 3,
39
- name: "王五",
40
- gender: "男",
41
- age: 22,
42
- city: "广州",
43
- date: "2021-01-03",
44
- },
45
- {
46
- id: 4,
47
- name: "赵六",
48
- gender: "女",
49
- age: 23,
50
- city: "深圳",
51
- date: "2021-01-04",
52
- },
53
- ],
54
- isEdit: true,
55
- };
56
- },
57
- computed: {
58
- options() {
59
- return {
60
- editConfig: {
61
- mode: "row",
62
- trigger: "manual",
63
- edit: {
64
- hasPermi: ["xx:xx:xx"],
65
- }, // 操作列按钮配置
66
- },
67
- renderColumns: [
68
- { prop: "name", label: "姓名" },
69
- {
70
- prop: "gender",
71
- label: "性别",
72
- },
73
- {
74
- prop: "age",
75
- label: "年龄",
76
- },
77
- {
78
- prop: "city",
79
- label: "城市",
80
- },
81
- {
82
- prop: "date",
83
- label: "日期",
84
- },
85
- ],
86
- };
87
- },
88
- },
89
- methods: {
90
- edit(done, scope) {
91
- console.log("edit", scope);
92
- this.$message.info("点击编辑", scope);
93
- done();
94
- },
95
- save(done, scope) {
96
- console.log("save", scope);
97
- this.$message.success("点击保存", scope);
98
- done();
99
- },
100
- cancel(done, scope) {
101
- console.log("cancel", scope);
102
- this.$message.warning("点击取消", scope);
103
- done();
104
- },
105
- },
106
- };
107
- </script>
@@ -1,116 +0,0 @@
1
- <template>
2
- <div>
3
- <el-button @click="isSelection = !isSelection"
4
- >切换为批量编辑选中项</el-button
5
- >
6
- <el-button @click="isAll = !isAll">切换为编辑所有项</el-button>
7
- <sc-crud
8
- ref="crud"
9
- :search.sync="searchForm"
10
- :options="options"
11
- :data="data"
12
- @batchEdit="batchEdit"
13
- @batchSave="batchSave"
14
- @batchCancel="batchCancel"
15
- >
16
- </sc-crud>
17
- </div>
18
- </template>
19
-
20
- <script>
21
- export default {
22
- data() {
23
- return {
24
- searchForm: {},
25
- data: [
26
- {
27
- id: 1,
28
- name: "张三",
29
- gender: "男",
30
- age: 20,
31
- city: "北京",
32
- date: "2021-01-01",
33
- },
34
- {
35
- id: 2,
36
- name: "李四",
37
- gender: "女",
38
- age: 21,
39
- city: "上海",
40
- date: "2021-01-02",
41
- },
42
- {
43
- id: 3,
44
- name: "王五",
45
- gender: "男",
46
- age: 22,
47
- city: "广州",
48
- date: "2021-01-03",
49
- },
50
- {
51
- id: 4,
52
- name: "赵六",
53
- gender: "女",
54
- age: 23,
55
- city: "深圳",
56
- date: "2021-01-04",
57
- },
58
- ],
59
- isEdit: true,
60
- isSelection: false,
61
- isAll: false,
62
- };
63
- },
64
- computed: {
65
- options() {
66
- return {
67
- editConfig: {
68
- mode: "row",
69
- trigger: "manual",
70
- batch: {
71
- isSelect: this.isSelection,
72
- hasPermi: ["xx:xx:xx"],
73
- }, // 批量操作按钮配置
74
- },
75
- selection: this.isSelection,
76
- renderColumns: [
77
- { prop: "name", label: "姓名" },
78
- {
79
- prop: "gender",
80
- label: "性别",
81
- },
82
- {
83
- prop: "age",
84
- label: "年龄",
85
- },
86
- {
87
- prop: "city",
88
- label: "城市",
89
- },
90
- {
91
- prop: "date",
92
- label: "日期",
93
- },
94
- ],
95
- };
96
- },
97
- },
98
- methods: {
99
- batchEdit(done) {
100
- console.log("batchEdit");
101
- this.$message.info("点击批量编辑");
102
- done(this.isAll ? this.data : this.data.slice(0, 2));
103
- },
104
- batchSave(done, rows) {
105
- console.log("batchSave", rows);
106
- this.$message.success("点击批量保存", rows);
107
- done();
108
- },
109
- batchCancel(done, rows) {
110
- console.log("batchCancel", rows);
111
- this.$message.warning("点击批量取消", rows);
112
- done();
113
- },
114
- },
115
- };
116
- </script>
@@ -1,98 +0,0 @@
1
- <template>
2
- <div>
3
- <sc-crud
4
- :search.sync="searchForm"
5
- :options="options"
6
- :data="data"
7
- @edit="edit"
8
- @save="save"
9
- >
10
- </sc-crud>
11
- </div>
12
- </template>
13
-
14
- <script>
15
- export default {
16
- data() {
17
- return {
18
- searchForm: {},
19
- data: [
20
- {
21
- id: 1,
22
- name: "张三",
23
- gender: "男",
24
- age: 20,
25
- city: "北京",
26
- date: "2021-01-01",
27
- },
28
- {
29
- id: 2,
30
- name: "李四",
31
- gender: "女",
32
- age: 21,
33
- city: "上海",
34
- date: "2021-01-02",
35
- },
36
- {
37
- id: 3,
38
- name: "王五",
39
- gender: "男",
40
- age: 22,
41
- city: "广州",
42
- date: "2021-01-03",
43
- },
44
- {
45
- id: 4,
46
- name: "赵六",
47
- gender: "女",
48
- age: 23,
49
- city: "深圳",
50
- date: "2021-01-04",
51
- },
52
- ],
53
- isEdit: true,
54
- };
55
- },
56
- computed: {
57
- options() {
58
- return {
59
- editConfig: {
60
- mode: "row",
61
- trigger: "click",
62
- },
63
- renderColumns: [
64
- { prop: "name", label: "姓名" },
65
- {
66
- prop: "gender",
67
- label: "性别",
68
- },
69
- {
70
- prop: "age",
71
- label: "年龄",
72
- },
73
- {
74
- prop: "city",
75
- label: "城市",
76
- },
77
- {
78
- prop: "date",
79
- label: "日期",
80
- },
81
- ],
82
- };
83
- },
84
- },
85
- methods: {
86
- edit(done, scope) {
87
- this.$message.info("编辑");
88
- console.log(scope, "edit");
89
- done();
90
- },
91
- save(done, scope) {
92
- this.$message.success("保存");
93
- console.log(scope, "save");
94
- done();
95
- },
96
- },
97
- };
98
- </script>
@@ -1,122 +0,0 @@
1
- <template>
2
- <div>
3
- <sc-crud
4
- ref="crud"
5
- :search.sync="searchForm"
6
- :options="options"
7
- :data="data"
8
- >
9
- </sc-crud>
10
- </div>
11
- </template>
12
-
13
- <script>
14
- export default {
15
- data() {
16
- return {
17
- searchForm: {},
18
- data: [
19
- {
20
- createTime: "2018-06-02 12:28:47",
21
- createUser: 94,
22
- id: 56,
23
- idNumber: "8",
24
- name: "",
25
- password: "sed laboris",
26
- phone: "18157668675",
27
- gender: "男",
28
- age: 20,
29
- status: 35,
30
- updateTime: "2018-09-08 16:33:19",
31
- updateUser: 58,
32
- username: "石洋",
33
- },
34
- {
35
- createTime: "2018-06-02 12:28:47",
36
- createUser: 94,
37
- id: 57,
38
- idNumber: "8",
39
- name: "",
40
- password: "sed laboris",
41
- phone: "18157668675",
42
- gender: "男",
43
- age: 20,
44
- status: 35,
45
- updateTime: "2018-09-08 16:33:19",
46
- updateUser: 58,
47
- username: "石洋",
48
- },
49
- ],
50
- };
51
- },
52
- computed: {
53
- options() {
54
- return {
55
- handleRow: {
56
- handles: [
57
- {
58
- label: "表格校验",
59
- type: "primary",
60
- onClick: (ctx) => {
61
- this.$refs.crud.validate();
62
- },
63
- },
64
- {
65
- label: "清除校验",
66
- type: "primary",
67
- onClick: (ctx) => {
68
- this.$refs.crud.clearValidate();
69
- },
70
- },
71
- {
72
- label: "表格第二行校验",
73
- type: "primary",
74
- onClick: (ctx) => {
75
- this.$refs.crud.validateField(1);
76
- },
77
- },
78
- ],
79
- },
80
- renderColumns: [
81
- {
82
- prop: "name",
83
- label: "昵称",
84
- isEdit: true,
85
- required: true,
86
- },
87
- {
88
- prop: "username",
89
- label: "姓名",
90
- },
91
- {
92
- prop: "gender",
93
- label: "性别",
94
- required: true,
95
- isEdit: true,
96
- form: {
97
- // 使用form字段自定义编辑模式的组件
98
- comp: {
99
- name: "el-select",
100
- clearable: true,
101
- children: [
102
- {
103
- name: "el-option",
104
- label: "男",
105
- value: "男",
106
- },
107
- {
108
- name: "el-option",
109
- label: "女",
110
- value: "女",
111
- },
112
- ],
113
- },
114
- },
115
- },
116
- ],
117
- };
118
- },
119
- },
120
- methods: {},
121
- };
122
- </script>
@@ -1,82 +0,0 @@
1
- <template>
2
- <div>
3
- <sc-crud
4
- ref="crud"
5
- :search.sync="searchForm"
6
- :options="options"
7
- :data="data"
8
- >
9
- </sc-crud>
10
- </div>
11
- </template>
12
-
13
- <script>
14
- export default {
15
- data() {
16
- return {
17
- searchForm: {},
18
- data: [
19
- {
20
- createTime: "2018-06-02 12:28:47",
21
- createUser: 94,
22
- id: 56,
23
- idNumber: "8",
24
- name: "",
25
- password: "sed laboris",
26
- phone: "18157668675",
27
- gender: "男",
28
- age: 20,
29
- status: 35,
30
- updateTime: "2018-09-08 16:33:19",
31
- updateUser: 58,
32
- username: "石洋",
33
- },
34
- ],
35
- };
36
- },
37
- computed: {
38
- options() {
39
- return {
40
- handleRow: {
41
- handles: [
42
- {
43
- label: "表格校验",
44
- type: "primary",
45
- onClick: () => {
46
- this.$refs.crud.validate();
47
- },
48
- },
49
- {
50
- label: "清除校验",
51
- type: "primary",
52
- onClick: () => {
53
- this.$refs.crud.clearValidate();
54
- },
55
- },
56
- ],
57
- },
58
- renderColumns: [
59
- {
60
- prop: "name",
61
- label: "昵称",
62
- isEdit: true,
63
- rules: [
64
- {
65
- validator: (rule, value, callback) => {
66
- if (value) {
67
- callback();
68
- } else {
69
- callback(new Error("error1"));
70
- }
71
- },
72
- trigger: "change",
73
- },
74
- ],
75
- },
76
- ],
77
- };
78
- },
79
- },
80
- methods: {},
81
- };
82
- </script>
@@ -1,88 +0,0 @@
1
- <template>
2
- <div>
3
- <sc-crud
4
- ref="crud"
5
- :search.sync="searchForm"
6
- :options="options"
7
- :data="data"
8
- >
9
- </sc-crud>
10
- </div>
11
- </template>
12
-
13
- <script>
14
- export default {
15
- data() {
16
- return {
17
- searchForm: {},
18
- data: [
19
- {
20
- createTime: "2018-06-02 12:28:47",
21
- createUser: 94,
22
- id: 56,
23
- idNumber: "8",
24
- name: "识间华中张认",
25
- password: "sed laboris",
26
- phone: "18157668675",
27
- gender: "男",
28
- age: 20,
29
- status: 35,
30
- updateTime: "2018-09-08 16:33:19",
31
- updateUser: 58,
32
- username: "石洋",
33
- },
34
- ],
35
- isEdit: false,
36
- };
37
- },
38
- computed: {
39
- options() {
40
- return {
41
- handleRow: {
42
- handles: [
43
- {
44
- label: "表格校验",
45
- type: "primary",
46
- onClick: (ctx) => {
47
- this.$refs.crud.validate();
48
- },
49
- },
50
- {
51
- label: "清除校验",
52
- type: "primary",
53
- onClick: (ctx) => {
54
- this.$refs.crud.clearValidate();
55
- },
56
- },
57
- ],
58
- },
59
- renderColumns: [
60
- {
61
- prop: "name",
62
- label: "正整数校验",
63
- isEdit: true,
64
- rules: ["integer"],
65
- },
66
- {
67
- prop: "username",
68
- label: "自定义正则校验",
69
- isEdit: true,
70
- form: {
71
- comp: {
72
- placeholder: "请输入2到16个汉字",
73
- },
74
- },
75
- rules: [
76
- {
77
- regular: /^(?:[\u4e00-\u9fa5·]{2,16})$/,
78
- msg: "请输入2到16个汉字",
79
- },
80
- ],
81
- },
82
- ],
83
- };
84
- },
85
- },
86
- methods: {},
87
- };
88
- </script>
@@ -1,91 +0,0 @@
1
- <template>
2
- <sc-crud ref="crud" default-expand-all :options="options" :data="data">
3
- </sc-crud>
4
- </template>
5
-
6
- <script>
7
- export default {
8
- data() {
9
- return {
10
- data: [
11
- {
12
- id: 1,
13
- name: "总数量",
14
- number: 100,
15
- children: [
16
- {
17
- id: 11,
18
- name: "子数量",
19
- number: 50,
20
- },
21
- {
22
- id: 12,
23
- name: "子数量",
24
- number: 30,
25
- },
26
- {
27
- id: 13,
28
- name: "子数量",
29
- number: "",
30
- },
31
- ],
32
- },
33
- ],
34
- };
35
- },
36
- computed: {
37
- options() {
38
- return {
39
- renderColumns: [
40
- {
41
- prop: "name",
42
- label: "名称",
43
- },
44
- {
45
- prop: "number",
46
- label: "数量",
47
- isEdit: ({ row }) => row.name !== "总数量",
48
- required: true,
49
- form: {
50
- comp: {
51
- type: "number",
52
- onBlur: (v, { row }) => {
53
- const father = this.data[0];
54
- father.children.forEach((i) => {
55
- if (row === i) return;
56
- this.$refs.crud.validateField({
57
- row: i,
58
- prop: "number",
59
- });
60
- });
61
- },
62
- },
63
- },
64
- rules: [
65
- {
66
- validator: (rule, value, callback) => {
67
- const father = this.data[0];
68
- if (father.children.some((i) => !i.number)) {
69
- callback();
70
- return;
71
- }
72
- let totalNumber = 0;
73
- father.children.forEach((item) => {
74
- totalNumber += Number(item.number);
75
- });
76
- if (totalNumber !== father.number) {
77
- callback(new Error("【子数量】总和不等于【总数量】"));
78
- } else {
79
- callback();
80
- }
81
- },
82
- },
83
- ],
84
- },
85
- ],
86
- };
87
- },
88
- },
89
- methods: {},
90
- };
91
- </script>