mirror of
https://gitee.com/dromara/go-view.git
synced 2025-02-24 16:22:57 +08:00
Merge branch 'dev' of https://gitee.com/jiang_cheng_1/go-view into dev
This commit is contained in:
commit
b055b6c511
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "go-view",
|
"name": "go-view",
|
||||||
"version": "1.0.9",
|
"version": "1.1.11",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "vite --host",
|
"dev": "vite --host",
|
||||||
"build": "vue-tsc --noEmit && vite build",
|
"build": "vue-tsc --noEmit && vite build",
|
||||||
|
@ -153,6 +153,8 @@ export const mousedownBoxSelect = (e: MouseEvent, item?: CreateComponentType | C
|
|||||||
|
|
||||||
// 鼠标抬起
|
// 鼠标抬起
|
||||||
const mouseup = () => {
|
const mouseup = () => {
|
||||||
|
// 鼠标抬起时,结束mousemove的节流函数,避免选框不消失问题
|
||||||
|
mousemove.cancel()
|
||||||
chartEditStore.setEditCanvas(EditCanvasTypeEnum.IS_SELECT, false)
|
chartEditStore.setEditCanvas(EditCanvasTypeEnum.IS_SELECT, false)
|
||||||
chartEditStore.setMousePosition(0, 0, 0, 0)
|
chartEditStore.setMousePosition(0, 0, 0, 0)
|
||||||
document.removeEventListener('mousemove', mousemove)
|
document.removeEventListener('mousemove', mousemove)
|
||||||
|
@ -7,6 +7,29 @@ import { CreateComponentType, CreateComponentGroupType, ConfigType } from '@/pac
|
|||||||
import { PublicGroupConfigClass } from '@/packages/public/publicConfig'
|
import { PublicGroupConfigClass } from '@/packages/public/publicConfig'
|
||||||
import merge from 'lodash/merge'
|
import merge from 'lodash/merge'
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 合并处理
|
||||||
|
* @param object 模板数据
|
||||||
|
* @param sources 新拿到的数据
|
||||||
|
* @returns object
|
||||||
|
*/
|
||||||
|
const componentMerge = (object: any, sources: any, notComponent = false) => {
|
||||||
|
// 非组件不处理
|
||||||
|
if (notComponent) return merge(object, sources)
|
||||||
|
// 组件排除 options
|
||||||
|
const option = sources.option
|
||||||
|
if(!option) return merge(object, sources)
|
||||||
|
|
||||||
|
// 为 undefined 的 sources 来源对象属性将被跳过详见 https://www.lodashjs.com/docs/lodash.merge
|
||||||
|
sources.option = undefined
|
||||||
|
if (option) {
|
||||||
|
return {
|
||||||
|
...merge(object, sources),
|
||||||
|
option: option
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// 请求处理
|
// 请求处理
|
||||||
export const useSync = () => {
|
export const useSync = () => {
|
||||||
const chartEditStore = useChartEditStore()
|
const chartEditStore = useChartEditStore()
|
||||||
@ -58,19 +81,19 @@ export const useSync = () => {
|
|||||||
newComponent.option = _componentInstance?.option
|
newComponent.option = _componentInstance?.option
|
||||||
if (callBack) {
|
if (callBack) {
|
||||||
if (changeId) {
|
if (changeId) {
|
||||||
callBack(merge(newComponent, { ..._componentInstance, id: getUUID() }))
|
callBack(componentMerge(newComponent, { ..._componentInstance, id: getUUID() }))
|
||||||
} else {
|
} else {
|
||||||
callBack(merge(newComponent, _componentInstance))
|
callBack(componentMerge(newComponent, _componentInstance))
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (changeId) {
|
if (changeId) {
|
||||||
chartEditStore.addComponentList(
|
chartEditStore.addComponentList(
|
||||||
merge(newComponent, { ..._componentInstance, id: getUUID() }),
|
componentMerge(newComponent, { ..._componentInstance, id: getUUID() }),
|
||||||
false,
|
false,
|
||||||
true
|
true
|
||||||
)
|
)
|
||||||
} else {
|
} else {
|
||||||
chartEditStore.addComponentList(merge(newComponent, _componentInstance), false, true)
|
chartEditStore.addComponentList(componentMerge(newComponent, _componentInstance), false, true)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -79,9 +102,9 @@ export const useSync = () => {
|
|||||||
// 创建分组
|
// 创建分组
|
||||||
let groupClass = new PublicGroupConfigClass()
|
let groupClass = new PublicGroupConfigClass()
|
||||||
if (changeId) {
|
if (changeId) {
|
||||||
groupClass = merge(groupClass, { ...comItem, id: getUUID() })
|
groupClass = componentMerge(groupClass, { ...comItem, id: getUUID() })
|
||||||
} else {
|
} else {
|
||||||
groupClass = merge(groupClass, comItem)
|
groupClass = componentMerge(groupClass, comItem)
|
||||||
}
|
}
|
||||||
|
|
||||||
// 注册子应用
|
// 注册子应用
|
||||||
@ -102,7 +125,7 @@ export const useSync = () => {
|
|||||||
} else {
|
} else {
|
||||||
// 非组件(顺便排除脏数据)
|
// 非组件(顺便排除脏数据)
|
||||||
if (key !== 'editCanvasConfig' && key !== 'requestGlobalConfig') return
|
if (key !== 'editCanvasConfig' && key !== 'requestGlobalConfig') return
|
||||||
merge(chartEditStore[key], projectData[key])
|
componentMerge(chartEditStore[key], projectData[key], true)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user