From 58b8200fb261c486d2db47a229d5dae8022e6e88 Mon Sep 17 00:00:00 2001 From: "mario.gk" Date: Tue, 22 Sep 2020 14:24:16 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20skeleton=20=E5=A2=9E=E5=8A=A0=E5=85=A8?= =?UTF-8?q?=E5=B1=80=20catch?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/editor-preset-vision/src/bus.ts | 3 ++- packages/editor-skeleton/src/layouts/workbench.tsx | 6 ++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/editor-preset-vision/src/bus.ts b/packages/editor-preset-vision/src/bus.ts index dd6b8386a..5e595da29 100644 --- a/packages/editor-preset-vision/src/bus.ts +++ b/packages/editor-preset-vision/src/bus.ts @@ -1,12 +1,13 @@ import logger from '@ali/vu-logger'; import { EventEmitter } from 'events'; import { editor } from './editor'; +import { AppHelper } from '@ali/lowcode-utils'; /** * Bus class as an EventEmitter */ export class Bus { - private emitter = new EventEmitter(); + private emitter = AppHelper.getInstance(); getEmitter() { return this.emitter; diff --git a/packages/editor-skeleton/src/layouts/workbench.tsx b/packages/editor-skeleton/src/layouts/workbench.tsx index 0d5d65379..2c3f9cc43 100644 --- a/packages/editor-skeleton/src/layouts/workbench.tsx +++ b/packages/editor-skeleton/src/layouts/workbench.tsx @@ -13,6 +13,7 @@ import RightArea from './right-area'; import './workbench.less'; import { SkeletonContext } from '../context'; import { EditorConfig, PluginClassSet } from '@ali/lowcode-types'; +import { AppHelper } from '@ali/lowcode-utils'; @observer export class Workbench extends Component<{ skeleton: Skeleton; config?: EditorConfig; components?: PluginClassSet; className?: string; topAreaItemClassName?: string }> { @@ -26,6 +27,11 @@ export class Workbench extends Component<{ skeleton: Skeleton; config?: EditorCo return false; } + componentDidCatch(error: any) { + const helper = AppHelper.getInstance(); + helper.emit('editor.skeleton.workbench.error', error); + } + render() { const { skeleton, className, topAreaItemClassName } = this.props; return (