From e716d74fbe3b633a8396684bb5a693938c6e4849 Mon Sep 17 00:00:00 2001 From: zhenyuWang <13641039885@163.com> Date: Thu, 23 Jun 2022 19:32:39 +0800 Subject: [PATCH] revert: fix(map): trigger tap instead of click --- .../lib/app/parser/event-parser.js | 17 ++++++----------- .../lib/h5/compiler-options.js | 19 +++++++------------ .../app-plus/view/components/map/index.vue | 3 +-- .../h5/view/components/map/index.vue | 5 ++--- 4 files changed, 16 insertions(+), 28 deletions(-) diff --git a/packages/uni-template-compiler/lib/app/parser/event-parser.js b/packages/uni-template-compiler/lib/app/parser/event-parser.js index 025c645d5..4a41e044c 100644 --- a/packages/uni-template-compiler/lib/app/parser/event-parser.js +++ b/packages/uni-template-compiler/lib/app/parser/event-parser.js @@ -9,26 +9,21 @@ module.exports = function parseEvent (el) { const { events: eventsMap } = deprecated - normalizeEvent(el, el.events, eventsMap) - normalizeEvent(el, el.nativeEvents, eventsMap) + normalizeEvent(el.events, eventsMap) + normalizeEvent(el.nativeEvents, eventsMap) } } -function normalizeEvent (el, events, eventsMap) { +function normalizeEvent (events, eventsMap) { if (!events) { return } - const isMap = el.tag === 'map' || el.tag === 'v-uni-map' Object.keys(events).forEach(name => { // 过时事件类型转换 if (eventsMap[name]) { - if (isMap && name === 'tap') { - // 地图组件有自己特定的 tap 事件,不做转换 - } else { - events[eventsMap[name]] = events[name] - delete events[name] - // warnLogs.add(`警告:事件${name}已过时,推荐使用${eventsMap[name]}代替`) - } + events[eventsMap[name]] = events[name] + delete events[name] + // warnLogs.add(`警告:事件${name}已过时,推荐使用${eventsMap[name]}代替`) } }) } diff --git a/packages/vue-cli-plugin-uni/lib/h5/compiler-options.js b/packages/vue-cli-plugin-uni/lib/h5/compiler-options.js index 0751c8545..a17e12321 100644 --- a/packages/vue-cli-plugin-uni/lib/h5/compiler-options.js +++ b/packages/vue-cli-plugin-uni/lib/h5/compiler-options.js @@ -87,29 +87,24 @@ module.exports = { events: eventsMap } = deprecated // const warnLogs = new Set() - normalizeEvent(el, el.events, eventsMap, filterModules) - normalizeEvent(el, el.nativeEvents, eventsMap, filterModules) + normalizeEvent(el.events, eventsMap, filterModules) + normalizeEvent(el.nativeEvents, eventsMap, filterModules) } } }] } -function normalizeEvent (el, events, eventsMap, filterModules) { +function normalizeEvent (events, eventsMap, filterModules) { if (!events) { return } - const isMap = el.tag === 'map' || el.tag === 'v-uni-map' Object.keys(events).forEach(name => { // 过时事件类型转换 if (eventsMap[name]) { - if (isMap && name === 'tap') { - // 地图组件有自己特定的 tap 事件,不做转换 - } else { - events[eventsMap[name]] = events[name] - delete events[name] - // warnLogs.add(`警告:事件${name}已过时,推荐使用${eventsMap[name]}代替`) - name = eventsMap[name] - } + events[eventsMap[name]] = events[name] + delete events[name] + // warnLogs.add(`警告:事件${name}已过时,推荐使用${eventsMap[name]}代替`) + name = eventsMap[name] } const handlers = events[name] diff --git a/src/platforms/app-plus/view/components/map/index.vue b/src/platforms/app-plus/view/components/map/index.vue index 7f85fdd96..5985544ba 100644 --- a/src/platforms/app-plus/view/components/map/index.vue +++ b/src/platforms/app-plus/view/components/map/index.vue @@ -221,8 +221,7 @@ export default { deep: true }) map.onclick = (e) => { - // 编译器会保留 map 上的 tap 事件 - this.$trigger('tap', {}, e) + this.$trigger('click', {}, e) } map.onstatuschanged = (e) => { this.$trigger('regionchange', {}, {}) diff --git a/src/platforms/h5/view/components/map/index.vue b/src/platforms/h5/view/components/map/index.vue index b7908fb88..aa34ffebe 100644 --- a/src/platforms/h5/view/components/map/index.vue +++ b/src/platforms/h5/view/components/map/index.vue @@ -375,9 +375,8 @@ export default { this.$emit('boundsready') }) maps.event.addListener(map, 'click', () => { - // 编译器会保留 map 上的 tap 事件 - this.$trigger('tap', {}, {}) - // this.$trigger('click', {}, {}) + // TODO 编译器将 tap 转换为click + this.$trigger('click', {}, {}) }) maps.event.addListener(map, 'dragstart', () => { this.$trigger('regionchange', {}, { -- GitLab