oceanzhu
|
23708e4644
|
chore: 更新版权年份
|
2023-01-04 16:11:51 +08:00 |
|
roymondchen
|
8fa1d4a5c3
|
feat(admin): 使用@tmagic/table重构活动列表
|
2022-12-30 15:37:12 +08:00 |
|
roymondchen
|
0f073e9441
|
chore(magic-admin): 更新tmagic
|
2022-12-22 11:27:49 +08:00 |
|
roymondchen
|
d051aeb155
|
chore: 去掉eslint prettier warning
|
2022-12-08 17:17:13 +08:00 |
|
oceanzhu
|
3fb880d09b
|
refactor(stage):重构魔方编辑器stage代码
Squash merge branch 'feature/oc_actionbox_879360293' into 'master'
对魔方编辑器核心代码stage进行重构,这部分代码主要是负责编辑器中间画布区域的处理,包括渲染一个所见即所得的画布,支持组件的增删改查和拖拽、高亮操作。
旧代码存在的问题以及解决方案:
1、过多暴露属性和循环引用,导致stageCore、stageDragResize、StageMultiDragResize、StageRender、StageMask、StageHighlight之间形成复杂的网状依赖,非常不可控。StageCore负责创建后面5个类的实例,并把这些实例作为自己的公共属性,同时core把自己的this传给这些实例,这些实例就会通过core传进来的this,通过core间接的访问其它实例的方法和属性,比如在stageDragResize中可能存在这样的一个访问:this.core.stageRender.contentWindow.document
解决方案:
1)、属性尽量设置为私有,对外暴露方法,不暴露属性;
2)、core避免向其它类传递this,改为传递接口,需要什么就传什么
2、事件传递较多,跳来跳去,定位问题较为困难
解决方案:
重新梳理各个类的职责,尽量在类中闭环,减少事件传递。
新增了actionManager类,core负责管理render、mask、actionManager三个类;
actionManager负责管理单选、多选、高亮三个类,同时将mask中的事件监听,转移到actionManager监听,actionManager形成单选、多选、高亮行为后,直接调动单选、多选、高亮完成功能。
3、存在一些重复代码
主要是拖拽框的代码在单选、多选、高亮中各自维护,改为统一维护
4、多选不支持辅助线对齐
将单选中的moveableOption管理逻辑抽取出来成为单选和多选的父类,使多选支持辅助线对齐
本次改动取消了一些对外暴露的属性,moveableOption回调函数签名也有变化,详细情况如下:
删除stageCore公共属性:
public selectedDom: HTMLElement | undefined;
public selectedDomList: HTMLElement[] = [];
public highlightedDom: Element | undefined;
public dr: StageDragResize;
public multiDr: StageMultiDragResize;
public highlightLayer: StageHighlight;
public config: StageCoreConfig;
public zoom = DEFAULT_ZOOM;
public containerHighlightClassName: string;
public containerHighlightDuration: number;
public containerHighlightType?: ContainerHighlightType;
public isContainer: IsContainer;
stageCore入参改动:
这两个参数原本定义:
moveableOptions?: ((core?: StageCore) => MoveableOptions) | MoveableOptions;
multiMoveableOptions?: ((core?: StageCore) => MoveableOptions) | MoveableOptions;
修改后定义:
moveableOptions?: CustomizeMoveableOptions;
multiMoveableOptions?: CustomizeMoveableOptions;
CustomizeMoveableOptions =
| ((config?: CustomizeMoveableOptionsCallbackConfig) => MoveableOptions)
| MoveableOptions
| undefined;
export interface CustomizeMoveableOptionsCallbackConfig {
targetElId?: string;
}
|
2022-11-24 21:19:56 +08:00 |
|
roymondchen
|
95be9e9390
|
chore: 更新element-plus, tabpane只能是tabs的子元素,不能对tabpane进行二次封装
|
2022-11-02 15:24:58 +08:00 |
|
roymondchen
|
f853299226
|
chore: 更新element-plus
|
2022-09-22 12:52:47 +08:00 |
|
roymondchen
|
13ef262bc2
|
chore(admin): 升级tmagic版本
|
2022-08-30 20:29:31 +08:00 |
|
roymondchen
|
aed4b42191
|
feat(admin): 更新runtime
|
2022-08-18 19:47:49 +08:00 |
|
roymondchen
|
eba6cbccde
|
feat(admin): 更新runtime
|
2022-08-08 17:12:34 +08:00 |
|
roymondchen
|
5e36ca8e47
|
build: 构建时某些文件的.d文件丢失
|
2022-08-05 20:12:35 +08:00 |
|
roymondchen
|
3c0f19347d
|
chore: 更新ts版本
|
2022-08-04 15:39:19 +08:00 |
|
roymondchen
|
259a5aa530
|
fix(admin): npm install 出错
fix #207
|
2022-08-01 16:52:24 +08:00 |
|
parisma
|
ec1bf1dcb7
|
fix(admin): 升级tmagic版本,修复第一个活动第一个页面uiconfig中id和page id重复的问题
|
2022-07-27 16:43:03 +08:00 |
|
roymondchen
|
7c42f751a4
|
fix(magic-admin): 画布显示出错
|
2022-07-14 21:31:51 +08:00 |
|
roymondchen
|
7dc0b4e261
|
fix(magic-admin): 修复发布页面资源路径错误,导致页面无法打开问题
|
2022-07-11 19:52:52 +08:00 |
|
roymondchen
|
a7afe057fb
|
chore: import type
|
2022-07-01 20:07:28 +08:00 |
|
roymondchen
|
6d4323123f
|
build: build之前做type check
|
2022-06-30 20:23:50 +08:00 |
|
roymondchen
|
a72658d697
|
chore(admin): 升级tmagic
|
2022-06-13 21:16:02 +08:00 |
|
parisma
|
fe821f7d84
|
fix(admin): 管理端更新编辑器的使用方式
|
2022-05-24 20:50:41 +08:00 |
|
roymondchen
|
bb97c4c6d0
|
fix(runtime): 获取dsl字段出错
|
2022-05-20 14:36:03 +08:00 |
|
roymondchen
|
155c22311d
|
refactor(magic-admin): 升级vue-cli5
|
2022-05-18 15:43:31 +08:00 |
|
parisma
|
e6a511e4fe
|
refactor(admin): 管理端启动所需runtime上传至git,省略开发者自行打包的步骤
|
2022-05-16 20:18:43 +08:00 |
|
parisma
|
e9e3691c79
|
refactor: 修复安全工单问题
|
2022-05-12 16:06:06 +08:00 |
|
roymondchen
|
75133ab6da
|
refactor: update element-plus
|
2022-05-11 18:38:17 +08:00 |
|
roymondchen
|
c60e226f35
|
chore: 更新element-plus
|
2022-03-29 13:02:40 +08:00 |
|
parisma
|
2bfb85bdbf
|
feat: 新增管理端demo代码
feat: 补充遗漏的文件
fix: 移除license
|
2022-03-14 18:06:15 +08:00 |
|