@ddwl/ddwl-ui 1.4.1 → 1.4.2

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ddwl/ddwl-ui",
3
- "version": "1.4.1",
3
+ "version": "1.4.2",
4
4
  "private": false,
5
5
  "main": "dist/index.common.js",
6
6
  "style": "dist/index.css",
@@ -21,7 +21,8 @@ export default (Vue) => {
21
21
  templateDownloadMethod = null,
22
22
  fileType = ['xlsx', 'xls'],
23
23
  fileSize = 5,
24
- slotRender = null
24
+ slotRender = null,
25
+ submit = null
25
26
  }) => {
26
27
  return new Promise((resolve, reject) => {
27
28
  const Import = Vue.extend(importVue)
@@ -38,22 +39,27 @@ export default (Vue) => {
38
39
  instance.fileType = fileType
39
40
  instance.fileSize = fileSize
40
41
  instance.slotRender = slotRender
42
+ instance.submit = submit
41
43
 
42
44
  const destroy = () => {
43
45
  instance.$destroy()
44
46
  el.parentNode && el.parentNode.removeChild(el)
45
47
  }
46
48
 
47
- instance.$on('submit', async (callback, file) => {
48
- try {
49
+ instance.$on('submit', async (file, callback) => {
50
+ if (instance.submit) {
51
+ try {
52
+ await instance.submit(file, callback)
53
+ } catch (e) {
54
+ callback(new Error())
55
+ }
56
+ } else {
49
57
  resolve({ file, callback })
50
- } catch (e) {
51
- callback(new Error(e))
52
58
  }
53
59
  })
54
60
 
55
61
  instance.$on('close', () => {
56
- reject()
62
+ resolve()
57
63
  Vue.nextTick(destroy)
58
64
  })
59
65
  })
@@ -6,7 +6,7 @@
6
6
  :title="title"
7
7
  submit-btn-text="导入"
8
8
  submit-btn-icon="el-icon-upload2"
9
- @submit="submit"
9
+ @submit="handleSubmit"
10
10
  >
11
11
  <el-form ref="importForm" :model="form" :inline="true">
12
12
  <el-form-item
@@ -143,17 +143,13 @@ export default {
143
143
  this.fileList = fileList
144
144
  this.form.file = file.raw
145
145
  },
146
- async submit(callback) {
146
+ async handleSubmit(callback) {
147
147
  if (!this.form.file) {
148
148
  this.$message.error('请选择导入文件')
149
149
  callback(new Error(false))
150
150
  return
151
151
  }
152
- try {
153
- this.$emit('submit', callback, this.form.file)
154
- } catch (e) {
155
- callback(new Error(false))
156
- }
152
+ this.$emit('submit', this.form.file, callback)
157
153
  }
158
154
  }
159
155
  }