From 36c4ffa02e1b8f7e43a53e29e3e5f57541ca1574 Mon Sep 17 00:00:00 2001 From: roymondchen Date: Wed, 22 Mar 2023 19:28:53 +0800 Subject: [PATCH] =?UTF-8?q?fix(core):=20=E9=9D=9E=E6=B5=8F=E8=A7=88?= =?UTF-8?q?=E5=99=A8=E7=8E=AF=E5=A2=83=E5=B1=8F=E8=94=BD=E7=9B=B8=E5=85=B3?= =?UTF-8?q?=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/core/src/App.ts | 2 +- packages/core/src/events.ts | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/packages/core/src/App.ts b/packages/core/src/App.ts index 67de2928..6f3943da 100644 --- a/packages/core/src/App.ts +++ b/packages/core/src/App.ts @@ -68,7 +68,7 @@ class App extends EventEmitter { options.designWidth && (this.designWidth = options.designWidth); // 根据屏幕大小计算出跟节点的font-size,用于rem样式的适配 - if (this.platform === 'mobile' || this.platform === 'editor') { + if (this.jsEngine === 'browser') { const calcFontsize = () => { const { width } = document.documentElement.getBoundingClientRect(); const fontSize = width / (this.designWidth / 100); diff --git a/packages/core/src/events.ts b/packages/core/src/events.ts index fb154684..1bb12260 100644 --- a/packages/core/src/events.ts +++ b/packages/core/src/events.ts @@ -75,6 +75,8 @@ const commonClickEventHandler = (app: App, eventName: string, e: any) => { }; export const bindCommonEventListener = (app: App) => { + if (app.jsEngine !== 'browser') return; + window.document.body.addEventListener('click', (e: any) => { commonClickEventHandler(app, 'click', e); }); @@ -91,6 +93,8 @@ export const bindCommonEventListener = (app: App) => { export const triggerCommonMethod = (methodName: string, node: Node) => { const { instance } = node; + if (!instance) return; + switch (methodName.replace(COMMON_METHOD_PREFIX, '')) { case CommonMethod.SHOW: instance.show(); @@ -101,7 +105,7 @@ export const triggerCommonMethod = (methodName: string, node: Node) => { break; case CommonMethod.SCROLL_TO_VIEW: - instance.$el.scrollIntoView({ behavior: 'smooth' }); + instance.$el?.scrollIntoView({ behavior: 'smooth' }); break; case CommonMethod.SCROLL_TO_TOP: