From 1e71dd86f6d0c4fc7e5143600d4bc4b50992a2a7 Mon Sep 17 00:00:00 2001 From: quanyawei <401863037@qq.com> Date: Thu, 04 Jul 2024 14:51:28 +0800 Subject: [PATCH] fix: 高德密钥修改 --- uni_modules/uview-ui/libs/util/emitter.js | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 51 insertions(+), 0 deletions(-) diff --git a/uni_modules/uview-ui/libs/util/emitter.js b/uni_modules/uview-ui/libs/util/emitter.js new file mode 100644 index 0000000..1e64044 --- /dev/null +++ b/uni_modules/uview-ui/libs/util/emitter.js @@ -0,0 +1,51 @@ +/** + * ������������ call ������this������ + * @param componentName // ��������������������������� + * @param eventName // ������������ + * @param params // ��������������������� + */ +function broadcast(componentName, eventName, params) { + // ��������������������������������������������� ������ ������ ��������������� + this.$children.map((child) => { + if (componentName === child.$options.name) { + child.$emit.apply(child, [eventName].concat(params)) + } else { + broadcast.apply(child, [componentName, eventName].concat(params)) + } + }) +} +export default { + methods: { + /** + * ������ (������������) (������) + * @param componentName // ��������������������������� + * @param eventName // ������������ + * @param params // ��������������������� + */ + dispatch(componentName, eventName, params) { + let parent = this.$parent || this.$root// $parent ������������������������ $root ��������� + let { name } = parent.$options // ���������������������������name + // ��������������������� && ��������������� ��� ������������������������������������������������������������������������������ + // ��������������������������������������������� + while (parent && (!name || name !== componentName)) { + parent = parent.$parent + if (parent) { + name = parent.$options.name + } + } + // ������������������������������name��������������� + if (parent) { + parent.$emit.apply(parent, [eventName].concat(params)) + } + }, + /** + * ������ (������������) (������������) + * @param componentName // ��������������������������� + * @param eventName // ������������ + * @param params // ��������������������� + */ + broadcast(componentName, eventName, params) { + broadcast.call(this, componentName, eventName, params) + } + } +} -- Gitblit v1.8.0