From 17289e08a264c70a00c6a75186d3ec162946737a Mon Sep 17 00:00:00 2001 From: wuhui_zzw <1760308791@qq.com> Date: Fri, 3 Mar 2023 10:42:22 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=EF=BC=9A=E5=AE=89=E8=A3=85?= =?UTF-8?q?=E6=96=B0=E7=9A=84uni=E5=AE=98=E6=96=B9=E7=BB=84=E4=BB=B6=20?= =?UTF-8?q?=E5=AF=B9=E6=8E=A5=E7=A7=92=E6=9D=80=E5=88=97=E8=A1=A8=E3=80=81?= =?UTF-8?q?=E7=A7=92=E6=9D=80=E5=95=86=E5=93=81=E8=AF=A6=E6=83=85=E6=95=B0?= =?UTF-8?q?=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- components/uni-popup-dialog/keypress.js | 45 ++ .../uni-popup-dialog/uni-popup-dialog.vue | 275 ++++++++++ components/uni-popup-new/i18n/en.json | 7 + components/uni-popup-new/i18n/index.js | 8 + components/uni-popup-new/i18n/zh-Hans.json | 7 + components/uni-popup-new/i18n/zh-Hant.json | 7 + components/uni-popup-new/keypress.js | 45 ++ components/uni-popup-new/popup.js | 26 + components/uni-popup-new/uni-popup.vue | 474 ++++++++++++++++++ components/uni-popup/i18n/en.json | 7 + components/uni-popup/i18n/index.js | 8 + components/uni-popup/i18n/zh-Hans.json | 7 + components/uni-popup/i18n/zh-Hant.json | 7 + components/uni-popup/popup.js | 26 + pages.json | 16 +- pages_promotion/futures/details.vue | 225 ++++++--- pages_promotion/futures/list.vue | 11 +- pages_promotion/futures/seckill.vue | 44 +- pages_promotion/message/index.vue | 110 ++++ 19 files changed, 1249 insertions(+), 106 deletions(-) create mode 100644 components/uni-popup-dialog/keypress.js create mode 100644 components/uni-popup-dialog/uni-popup-dialog.vue create mode 100644 components/uni-popup-new/i18n/en.json create mode 100644 components/uni-popup-new/i18n/index.js create mode 100644 components/uni-popup-new/i18n/zh-Hans.json create mode 100644 components/uni-popup-new/i18n/zh-Hant.json create mode 100644 components/uni-popup-new/keypress.js create mode 100644 components/uni-popup-new/popup.js create mode 100644 components/uni-popup-new/uni-popup.vue create mode 100644 components/uni-popup/i18n/en.json create mode 100644 components/uni-popup/i18n/index.js create mode 100644 components/uni-popup/i18n/zh-Hans.json create mode 100644 components/uni-popup/i18n/zh-Hant.json create mode 100644 components/uni-popup/popup.js create mode 100644 pages_promotion/message/index.vue diff --git a/components/uni-popup-dialog/keypress.js b/components/uni-popup-dialog/keypress.js new file mode 100644 index 0000000..6ef26a2 --- /dev/null +++ b/components/uni-popup-dialog/keypress.js @@ -0,0 +1,45 @@ +// #ifdef H5 +export default { + name: 'Keypress', + props: { + disable: { + type: Boolean, + default: false + } + }, + mounted () { + const keyNames = { + esc: ['Esc', 'Escape'], + tab: 'Tab', + enter: 'Enter', + space: [' ', 'Spacebar'], + up: ['Up', 'ArrowUp'], + left: ['Left', 'ArrowLeft'], + right: ['Right', 'ArrowRight'], + down: ['Down', 'ArrowDown'], + delete: ['Backspace', 'Delete', 'Del'] + } + const listener = ($event) => { + if (this.disable) { + return + } + const keyName = Object.keys(keyNames).find(key => { + const keyName = $event.key + const value = keyNames[key] + return value === keyName || (Array.isArray(value) && value.includes(keyName)) + }) + if (keyName) { + // 避免和其他按键事件冲突 + setTimeout(() => { + this.$emit(keyName, {}) + }, 0) + } + } + document.addEventListener('keyup', listener) + this.$once('hook:beforeDestroy', () => { + document.removeEventListener('keyup', listener) + }) + }, + render: () => {} +} +// #endif diff --git a/components/uni-popup-dialog/uni-popup-dialog.vue b/components/uni-popup-dialog/uni-popup-dialog.vue new file mode 100644 index 0000000..9289396 --- /dev/null +++ b/components/uni-popup-dialog/uni-popup-dialog.vue @@ -0,0 +1,275 @@ + + + + + diff --git a/components/uni-popup-new/i18n/en.json b/components/uni-popup-new/i18n/en.json new file mode 100644 index 0000000..7f1bd06 --- /dev/null +++ b/components/uni-popup-new/i18n/en.json @@ -0,0 +1,7 @@ +{ + "uni-popup.cancel": "cancel", + "uni-popup.ok": "ok", + "uni-popup.placeholder": "pleace enter", + "uni-popup.title": "Hint", + "uni-popup.shareTitle": "Share to" +} diff --git a/components/uni-popup-new/i18n/index.js b/components/uni-popup-new/i18n/index.js new file mode 100644 index 0000000..de7509c --- /dev/null +++ b/components/uni-popup-new/i18n/index.js @@ -0,0 +1,8 @@ +import en from './en.json' +import zhHans from './zh-Hans.json' +import zhHant from './zh-Hant.json' +export default { + en, + 'zh-Hans': zhHans, + 'zh-Hant': zhHant +} diff --git a/components/uni-popup-new/i18n/zh-Hans.json b/components/uni-popup-new/i18n/zh-Hans.json new file mode 100644 index 0000000..5e3003c --- /dev/null +++ b/components/uni-popup-new/i18n/zh-Hans.json @@ -0,0 +1,7 @@ +{ + "uni-popup.cancel": "取消", + "uni-popup.ok": "确定", + "uni-popup.placeholder": "请输入", + "uni-popup.title": "提示", + "uni-popup.shareTitle": "分享到" +} diff --git a/components/uni-popup-new/i18n/zh-Hant.json b/components/uni-popup-new/i18n/zh-Hant.json new file mode 100644 index 0000000..13e39eb --- /dev/null +++ b/components/uni-popup-new/i18n/zh-Hant.json @@ -0,0 +1,7 @@ +{ + "uni-popup.cancel": "取消", + "uni-popup.ok": "確定", + "uni-popup.placeholder": "請輸入", + "uni-popup.title": "提示", + "uni-popup.shareTitle": "分享到" +} diff --git a/components/uni-popup-new/keypress.js b/components/uni-popup-new/keypress.js new file mode 100644 index 0000000..62dda46 --- /dev/null +++ b/components/uni-popup-new/keypress.js @@ -0,0 +1,45 @@ +// #ifdef H5 +export default { + name: 'Keypress', + props: { + disable: { + type: Boolean, + default: false + } + }, + mounted () { + const keyNames = { + esc: ['Esc', 'Escape'], + tab: 'Tab', + enter: 'Enter', + space: [' ', 'Spacebar'], + up: ['Up', 'ArrowUp'], + left: ['Left', 'ArrowLeft'], + right: ['Right', 'ArrowRight'], + down: ['Down', 'ArrowDown'], + delete: ['Backspace', 'Delete', 'Del'] + } + const listener = ($event) => { + if (this.disable) { + return + } + const keyName = Object.keys(keyNames).find(key => { + const keyName = $event.key + const value = keyNames[key] + return value === keyName || (Array.isArray(value) && value.includes(keyName)) + }) + if (keyName) { + // 避免和其他按键事件冲突 + setTimeout(() => { + this.$emit(keyName, {}) + }, 0) + } + } + document.addEventListener('keyup', listener) + // this.$once('hook:beforeDestroy', () => { + // document.removeEventListener('keyup', listener) + // }) + }, + render: () => {} +} +// #endif diff --git a/components/uni-popup-new/popup.js b/components/uni-popup-new/popup.js new file mode 100644 index 0000000..c4e5781 --- /dev/null +++ b/components/uni-popup-new/popup.js @@ -0,0 +1,26 @@ + +export default { + data() { + return { + + } + }, + created(){ + this.popup = this.getParent() + }, + methods:{ + /** + * 获取父元素实例 + */ + getParent(name = 'uniPopup') { + let parent = this.$parent; + let parentName = parent.$options.name; + while (parentName !== name) { + parent = parent.$parent; + if (!parent) return false + parentName = parent.$options.name; + } + return parent; + }, + } +} diff --git a/components/uni-popup-new/uni-popup.vue b/components/uni-popup-new/uni-popup.vue new file mode 100644 index 0000000..db90c59 --- /dev/null +++ b/components/uni-popup-new/uni-popup.vue @@ -0,0 +1,474 @@ + + + + diff --git a/components/uni-popup/i18n/en.json b/components/uni-popup/i18n/en.json new file mode 100644 index 0000000..7f1bd06 --- /dev/null +++ b/components/uni-popup/i18n/en.json @@ -0,0 +1,7 @@ +{ + "uni-popup.cancel": "cancel", + "uni-popup.ok": "ok", + "uni-popup.placeholder": "pleace enter", + "uni-popup.title": "Hint", + "uni-popup.shareTitle": "Share to" +} diff --git a/components/uni-popup/i18n/index.js b/components/uni-popup/i18n/index.js new file mode 100644 index 0000000..de7509c --- /dev/null +++ b/components/uni-popup/i18n/index.js @@ -0,0 +1,8 @@ +import en from './en.json' +import zhHans from './zh-Hans.json' +import zhHant from './zh-Hant.json' +export default { + en, + 'zh-Hans': zhHans, + 'zh-Hant': zhHant +} diff --git a/components/uni-popup/i18n/zh-Hans.json b/components/uni-popup/i18n/zh-Hans.json new file mode 100644 index 0000000..5e3003c --- /dev/null +++ b/components/uni-popup/i18n/zh-Hans.json @@ -0,0 +1,7 @@ +{ + "uni-popup.cancel": "取消", + "uni-popup.ok": "确定", + "uni-popup.placeholder": "请输入", + "uni-popup.title": "提示", + "uni-popup.shareTitle": "分享到" +} diff --git a/components/uni-popup/i18n/zh-Hant.json b/components/uni-popup/i18n/zh-Hant.json new file mode 100644 index 0000000..13e39eb --- /dev/null +++ b/components/uni-popup/i18n/zh-Hant.json @@ -0,0 +1,7 @@ +{ + "uni-popup.cancel": "取消", + "uni-popup.ok": "確定", + "uni-popup.placeholder": "請輸入", + "uni-popup.title": "提示", + "uni-popup.shareTitle": "分享到" +} diff --git a/components/uni-popup/popup.js b/components/uni-popup/popup.js new file mode 100644 index 0000000..c4e5781 --- /dev/null +++ b/components/uni-popup/popup.js @@ -0,0 +1,26 @@ + +export default { + data() { + return { + + } + }, + created(){ + this.popup = this.getParent() + }, + methods:{ + /** + * 获取父元素实例 + */ + getParent(name = 'uniPopup') { + let parent = this.$parent; + let parentName = parent.$options.name; + while (parentName !== name) { + parent = parent.$parent; + if (!parent) return false + parentName = parent.$options.name; + } + return parent; + }, + } +} diff --git a/pages.json b/pages.json index cd690eb..6b003a0 100644 --- a/pages.json +++ b/pages.json @@ -1021,13 +1021,17 @@ // #endif "navigationBarTitleText": "我的小店" } + }, + //****************** 通知消息 ****************** + { + "path": "message/index", + "style": { + // #ifdef H5 + "navigationStyle": "custom", + // #endif + "navigationBarTitleText": "消息中心" + } } - - - - - - ] }, { diff --git a/pages_promotion/futures/details.vue b/pages_promotion/futures/details.vue index 2908566..17bb3bd 100644 --- a/pages_promotion/futures/details.vue +++ b/pages_promotion/futures/details.vue @@ -1,76 +1,76 @@