From aa219eac04870bf741784ba392037e84510e0f35 Mon Sep 17 00:00:00 2001 From: hufeixiong <673632758@qq.com> Date: Thu, 29 Jul 2021 11:01:48 +0800 Subject: [PATCH] update 0.7.4 --- CHANGELOG.md | 5 ++ packages/dooringx-doc/src/changelog/1.1.md | 6 +- packages/dooringx-lib/README.md | 58 ++++++++++++++++--- packages/dooringx-lib/package.json | 2 +- .../dooringx-lib/src/core/innerDrag/index.ts | 14 +++-- .../dooringx-lib/src/core/innerDrag/state.ts | 10 ++-- script/publish.js | 7 ++- 7 files changed, 79 insertions(+), 23 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index ce75bf0..498bb1f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,11 @@ ## changelog +## 0.7.4 + +修复框选移动bug。 + + ## 0.7.3 修复弹窗位置与选中问题。 diff --git a/packages/dooringx-doc/src/changelog/1.1.md b/packages/dooringx-doc/src/changelog/1.1.md index d53ce86..e2687ed 100644 --- a/packages/dooringx-doc/src/changelog/1.1.md +++ b/packages/dooringx-doc/src/changelog/1.1.md @@ -2,10 +2,14 @@ title: CHANGELOG order: 1 --- - ## changelog +## 0.7.4 + +修复框选移动bug。 + + ## 0.7.3 修复弹窗位置与选中问题。 diff --git a/packages/dooringx-lib/README.md b/packages/dooringx-lib/README.md index 5440620..d26b7d8 100644 --- a/packages/dooringx-lib/README.md +++ b/packages/dooringx-lib/README.md @@ -1,11 +1,51 @@ - +
+ +
-## Dooringx-lib -lib主包 \ No newline at end of file + +dooringx-lib 是 dooringx 的基座,是移除了 dooringx 插件的可视化拖拽框架。 + + + +dooringx-lib 提供自己的一套数据流事件机制以及弹窗等解决方案,可以让你更快地自己定制开发可视化拖拽平台。 + + + + + + + + + +dooringx-lib 在运行时维护一套数据流,主要分为json数据部分,左侧组件部分,右侧配置项部分,快捷键部分,弹窗部分,事件与函数部分,数据源部分。 + + + +其除了提供基础的拖拽、移动、缩放、全选、旋转等功能外,还可以使用暴露的组件。如果觉得组件不够定制化,可以调整样式或者自己重新写。 + + + +### 安装 + + + +使用 npm 或者 yarn 安装 + + + +``` +npm i dooringx-lib +``` + + + +### 文档 + +详情见文档 https://h5-dooring.github.io/dooringx/ + + +### 问题 + +有问题提issue或联系qq:673632758 + diff --git a/packages/dooringx-lib/package.json b/packages/dooringx-lib/package.json index 2881b43..69def9a 100644 --- a/packages/dooringx-lib/package.json +++ b/packages/dooringx-lib/package.json @@ -1,5 +1,5 @@ { - "version": "0.7.3", + "version": "0.7.4", "license": "MIT", "main": "dist/index.js", "module": "dist/dooringx-lib.esm.js", diff --git a/packages/dooringx-lib/src/core/innerDrag/index.ts b/packages/dooringx-lib/src/core/innerDrag/index.ts index dabf13b..83c20cb 100644 --- a/packages/dooringx-lib/src/core/innerDrag/index.ts +++ b/packages/dooringx-lib/src/core/innerDrag/index.ts @@ -50,8 +50,8 @@ export const innerDrag = function ( innerDragState.startX = Math.round(e.clientX); innerDragState.startY = Math.round(e.clientY); innerDragState.item = item; - innerDragState.itemX = item.left; - innerDragState.itemY = item.top; + // innerDragState.itemX = item.left; 会导致框选后移动问题 + // innerDragState.itemY = item.top; innerDragState.isDrag = true; innerDragState.ref = ref; innerDragState.current = store.getIndex(); @@ -87,21 +87,23 @@ export const innerContainerDrag = function (config: UserConfig) { lastblock = innerDragState.item; newblock = cloneblock.map((v) => { if (v.focus && v.position !== 'static') { - v.left = Math.round(innerDragState.itemX + durX); - v.top = Math.round(innerDragState.itemY + durY); + v.left = Math.round(v.left + durX); + v.top = Math.round(v.top + durY); } return v; }); } else { newblock = store.getData().block.map((v) => { if (v.focus && v.position !== 'static') { - v.left = Math.round(innerDragState.itemX + durX); - v.top = Math.round(innerDragState.itemY + durY); + v.left = Math.round(v.left + durX); + v.top = Math.round(v.top + durY); } return v; }); } store.setData({ ...store.getData(), block: newblock }); + innerDragState.startX = moveX; + innerDragState.startY = moveY; } resizerMouseMove(e, config); rotateMouseMove(e, config); diff --git a/packages/dooringx-lib/src/core/innerDrag/state.ts b/packages/dooringx-lib/src/core/innerDrag/state.ts index d7cb034..88647f2 100644 --- a/packages/dooringx-lib/src/core/innerDrag/state.ts +++ b/packages/dooringx-lib/src/core/innerDrag/state.ts @@ -2,7 +2,7 @@ * @Author: yehuozhili * @Date: 2021-03-14 12:09:11 * @LastEditors: yehuozhili - * @LastEditTime: 2021-07-27 11:40:39 + * @LastEditTime: 2021-07-29 10:48:29 * @FilePath: \dooringx\packages\dooringx-lib\src\core\innerDrag\state.ts */ import { RefObject } from 'react'; @@ -17,8 +17,8 @@ export interface innerDragStateType { ref: RefObject | null; current: number; lastClick: null | IBlockType; - itemX: number; - itemY: number; + // itemX: number; + // itemY: number; } export const innerDragState: innerDragStateType = { @@ -29,6 +29,6 @@ export const innerDragState: innerDragStateType = { ref: null, current: 0, lastClick: null, - itemX: 0, - itemY: 0, + // itemX: 0, + // itemY: 0, }; diff --git a/script/publish.js b/script/publish.js index 9344f89..c8c2f25 100644 --- a/script/publish.js +++ b/script/publish.js @@ -2,7 +2,7 @@ * @Author: yehuozhili * @Date: 2021-07-04 10:28:57 * @LastEditors: yehuozhili - * @LastEditTime: 2021-07-09 00:07:26 + * @LastEditTime: 2021-07-29 10:59:24 * @FilePath: \dooringx\script\publish.js */ const fs = require('fs-extra'); @@ -10,6 +10,11 @@ const path = require('path'); const spawn = require('child_process').spawn; const root = process.cwd(); const rootPath = path.resolve(root, 'packages', 'dooringx-lib'); +const readme = path.resolve(root, 'README.md'); +const libreadme = path.resolve(root, 'packages', 'dooringx-lib', 'README.md'); +fs.removeSync(libreadme); +fs.copyFileSync(readme, libreadme); + const command = `npm`; const args = [`publish`]; const child = spawn(command, args, {