diff --git a/mall4v/src/utils/debounce.js b/mall4v/src/utils/debounce.js new file mode 100644 index 0000000..60dddd4 --- /dev/null +++ b/mall4v/src/utils/debounce.js @@ -0,0 +1,19 @@ +// 防抖 防止表单重复提交 +export const Debounce = (fn, t) => { + let delay = t || 300 + let timer + return function () { + let args = arguments + if (timer) { + clearTimeout(timer) + } + + let callNow = !timer + + timer = setTimeout(() => { + timer = null + }, delay) + + if (callNow) fn.apply(this, args) + } +} diff --git a/mall4v/src/views/modules/admin/indexImg-add-or-update.vue b/mall4v/src/views/modules/admin/indexImg-add-or-update.vue index 205f55a..f8b3bd1 100644 --- a/mall4v/src/views/modules/admin/indexImg-add-or-update.vue +++ b/mall4v/src/views/modules/admin/indexImg-add-or-update.vue @@ -71,6 +71,7 @@ diff --git a/mall4v/src/views/modules/prod/category-add-or-update.vue b/mall4v/src/views/modules/prod/category-add-or-update.vue index bffbe44..53b8f4c 100644 --- a/mall4v/src/views/modules/prod/category-add-or-update.vue +++ b/mall4v/src/views/modules/prod/category-add-or-update.vue @@ -60,6 +60,7 @@ diff --git a/mall4v/src/views/modules/prod/prodInfo.vue b/mall4v/src/views/modules/prod/prodInfo.vue index 15264aa..5dc03ba 100644 --- a/mall4v/src/views/modules/prod/prodInfo.vue +++ b/mall4v/src/views/modules/prod/prodInfo.vue @@ -91,6 +91,7 @@ import ProdTransport from './prod-transport' import SkuTag from './sku-tag' import SkuTable from './sku-table' import TinyMce from '@/components/tiny-mce' +import { Debounce } from '@/utils/debounce' export default { data () { @@ -186,7 +187,7 @@ export default { this.dataForm.categoryId = val[val.length - 1] }, // 表单提交 - dataFormSubmit () { + dataFormSubmit: Debounce(function () { this.$refs['dataForm'].validate((valid) => { if (!valid) { return @@ -229,7 +230,7 @@ export default { }) }) }) - }, + }), paramSetPriceAndStocks (param) { // 获取规格属性信息 // param.skuList = this.$refs.prodSpec.getTableSpecData() diff --git a/mall4v/src/views/modules/prod/prodTag-add-or-update.vue b/mall4v/src/views/modules/prod/prodTag-add-or-update.vue index d61bd9a..9ee31ee 100644 --- a/mall4v/src/views/modules/prod/prodTag-add-or-update.vue +++ b/mall4v/src/views/modules/prod/prodTag-add-or-update.vue @@ -49,6 +49,7 @@ diff --git a/mall4v/src/views/modules/prod/spec-add-or-update.vue b/mall4v/src/views/modules/prod/spec-add-or-update.vue index 94c6126..74063d2 100644 --- a/mall4v/src/views/modules/prod/spec-add-or-update.vue +++ b/mall4v/src/views/modules/prod/spec-add-or-update.vue @@ -49,6 +49,7 @@ diff --git a/mall4v/src/views/modules/shop/notice-add-or-update.vue b/mall4v/src/views/modules/shop/notice-add-or-update.vue index 81613e7..c82f0b1 100644 --- a/mall4v/src/views/modules/shop/notice-add-or-update.vue +++ b/mall4v/src/views/modules/shop/notice-add-or-update.vue @@ -44,8 +44,16 @@ diff --git a/mall4v/src/views/modules/shop/pickAddr-add-or-update.vue b/mall4v/src/views/modules/shop/pickAddr-add-or-update.vue index 0713c41..a23bb5f 100644 --- a/mall4v/src/views/modules/shop/pickAddr-add-or-update.vue +++ b/mall4v/src/views/modules/shop/pickAddr-add-or-update.vue @@ -71,6 +71,7 @@ diff --git a/mall4v/src/views/modules/shop/transport-add-or-update.vue b/mall4v/src/views/modules/shop/transport-add-or-update.vue index ef8d15b..adc929f 100644 --- a/mall4v/src/views/modules/shop/transport-add-or-update.vue +++ b/mall4v/src/views/modules/shop/transport-add-or-update.vue @@ -204,6 +204,7 @@ diff --git a/mall4v/src/views/modules/sys/area-add-or-update.vue b/mall4v/src/views/modules/sys/area-add-or-update.vue index 738d5e4..a1af431 100644 --- a/mall4v/src/views/modules/sys/area-add-or-update.vue +++ b/mall4v/src/views/modules/sys/area-add-or-update.vue @@ -36,6 +36,7 @@ diff --git a/mall4v/src/views/modules/sys/role-add-or-update.vue b/mall4v/src/views/modules/sys/role-add-or-update.vue index f70a35a..b73f1ed 100644 --- a/mall4v/src/views/modules/sys/role-add-or-update.vue +++ b/mall4v/src/views/modules/sys/role-add-or-update.vue @@ -29,6 +29,7 @@ diff --git a/mall4v/src/views/modules/sys/schedule-add-or-update.vue b/mall4v/src/views/modules/sys/schedule-add-or-update.vue index ef638f2..d8f7f37 100644 --- a/mall4v/src/views/modules/sys/schedule-add-or-update.vue +++ b/mall4v/src/views/modules/sys/schedule-add-or-update.vue @@ -28,84 +28,85 @@ diff --git a/mall4v/src/views/modules/sys/user-add-or-update.vue b/mall4v/src/views/modules/sys/user-add-or-update.vue index c6dea7c..c8db30a 100644 --- a/mall4v/src/views/modules/sys/user-add-or-update.vue +++ b/mall4v/src/views/modules/sys/user-add-or-update.vue @@ -40,6 +40,7 @@ diff --git a/mall4v/src/views/modules/user/addr-add-or-update.vue b/mall4v/src/views/modules/user/addr-add-or-update.vue index 15506c2..233e3dd 100644 --- a/mall4v/src/views/modules/user/addr-add-or-update.vue +++ b/mall4v/src/views/modules/user/addr-add-or-update.vue @@ -87,6 +87,7 @@ diff --git a/mall4v/src/views/modules/user/user-add-or-update.vue b/mall4v/src/views/modules/user/user-add-or-update.vue index ad42776..ec5bc59 100644 --- a/mall4v/src/views/modules/user/user-add-or-update.vue +++ b/mall4v/src/views/modules/user/user-add-or-update.vue @@ -37,6 +37,7 @@