From da61e4cf73a85adc85cbf389136935654b113ef1 Mon Sep 17 00:00:00 2001 From: chenshenhai Date: Wed, 11 Aug 2021 22:31:43 +0800 Subject: [PATCH] fix: select-element mode at pointEnd --- packages/core/examples/features/lib/main.js | 71 +++++++++++---------- packages/core/src/index.ts | 6 +- 2 files changed, 43 insertions(+), 34 deletions(-) diff --git a/packages/core/examples/features/lib/main.js b/packages/core/examples/features/lib/main.js index 1a81dd2..9708064 100644 --- a/packages/core/examples/features/lib/main.js +++ b/packages/core/examples/features/lib/main.js @@ -18,7 +18,7 @@ const core = new Core(mount, { contextWidth: 600, contextHeight: 400, devicePixelRatio: 4, - onlyRender: true, + // onlyRender: true, }, { scrollWrapper: { use: true, @@ -35,38 +35,7 @@ const core = new Core(mount, { }); -core.on('error', (data) => { - console.log('error: ', data); -}); -core.on('changeData', (data) => { - console.log('changeData: ', data); -}); -core.on('changeScreen', (data) => { - console.log('changeScreen: ', data); -}); -core.on('screenSelectElement', (data) => { - console.log('screenSelectElement: ', data); -}); -core.on('screenClickElement', (data) => { - console.log('screenClickElement: ', data); -}) -core.on('mouseOverElement', (data) => { - console.log('mouseOverElement: ', data); -}); -core.on('mouseLeaveElement', (data) => { - console.log('mouseLeaveElement: ', data); -}); - -core.on('screenMoveElementStart', (data) => { - console.log('screenMoveElementStart: ', data); -}); -core.on('screenMoveElementEnd', (data) => { - console.log('screenMoveElementEnd: ', data); -}); -core.on('screenChangeElement', (data) => { - console.log('screenChangeElement: ', data); -}); - +// initEvent(); core.setData(data); @@ -74,3 +43,39 @@ doScale(core, defaultConf.scale); doScroll(core, defaultConf); doElemens(core); + + +function initEvent() { + core.on('error', (data) => { + console.log('error: ', data); + }); + core.on('changeData', (data) => { + console.log('changeData: ', data); + }); + core.on('changeScreen', (data) => { + console.log('changeScreen: ', data); + }); + core.on('screenSelectElement', (data) => { + console.log('screenSelectElement: ', data); + }); + core.on('screenClickElement', (data) => { + console.log('screenClickElement: ', data); + }) + core.on('mouseOverElement', (data) => { + console.log('mouseOverElement: ', data); + }); + core.on('mouseLeaveElement', (data) => { + console.log('mouseLeaveElement: ', data); + }); + + core.on('screenMoveElementStart', (data) => { + console.log('screenMoveElementStart: ', data); + }); + core.on('screenMoveElementEnd', (data) => { + console.log('screenMoveElementEnd: ', data); + }); + core.on('screenChangeElement', (data) => { + console.log('screenChangeElement: ', data); + }); + +} \ No newline at end of file diff --git a/packages/core/src/index.ts b/packages/core/src/index.ts index 6b82830..e39dd0b 100644 --- a/packages/core/src/index.ts +++ b/packages/core/src/index.ts @@ -394,7 +394,11 @@ class Core { this[_helper].clearSelectedArea(); this[_draw](); } - this[_tempData].set('selectedUUID', null); + + if (this[_mode] !== Mode.SELECT_ELEMENT) { + this[_tempData].set('selectedUUID', null); + } + this[_prevPoint] = null; this[_cursorStatus] = CursorStatus.NULL; this[_mode] = Mode.NULL;