mirror of
https://gitee.com/dromara/go-view.git
synced 2025-04-06 03:58:04 +08:00
perf: 处理注册时的分组场景
This commit is contained in:
parent
b0e4383a43
commit
96d8cb0006
@ -3,7 +3,7 @@ import { useChartEditStore } from '@/store/modules/chartEditStore/chartEditStore
|
|||||||
import { ChartEditStoreEnum, ChartEditStorage } from '@/store/modules/chartEditStore/chartEditStore.d'
|
import { ChartEditStoreEnum, ChartEditStorage } from '@/store/modules/chartEditStore/chartEditStore.d'
|
||||||
import { useChartHistoryStore } from '@/store/modules/chartHistoryStore/chartHistoryStore'
|
import { useChartHistoryStore } from '@/store/modules/chartHistoryStore/chartHistoryStore'
|
||||||
import { fetchChartComponent, fetchConfigComponent, createComponent } from '@/packages/index'
|
import { fetchChartComponent, fetchConfigComponent, createComponent } from '@/packages/index'
|
||||||
import { CreateComponentType } from '@/packages/index.d'
|
import { CreateComponentType, CreateComponentGroupType, ConfigType } from '@/packages/index.d'
|
||||||
|
|
||||||
// 请求处理
|
// 请求处理
|
||||||
export const useSync = () => {
|
export const useSync = () => {
|
||||||
@ -25,15 +25,18 @@ export const useSync = () => {
|
|||||||
chartHistoryStore.clearForwardStack()
|
chartHistoryStore.clearForwardStack()
|
||||||
}
|
}
|
||||||
// 列表组件注册
|
// 列表组件注册
|
||||||
projectData.componentList.forEach(async (e: CreateComponentType) => {
|
projectData.componentList.forEach(async (e: CreateComponentType | CreateComponentGroupType) => {
|
||||||
if (!window['$vue'].component(e.chartConfig.chartKey)) {
|
// 排除分组
|
||||||
|
if (e.isGroup) return
|
||||||
|
const target = e as CreateComponentType
|
||||||
|
if (!window['$vue'].component(target.chartConfig.chartKey)) {
|
||||||
window['$vue'].component(
|
window['$vue'].component(
|
||||||
e.chartConfig.chartKey,
|
target.chartConfig.chartKey,
|
||||||
fetchChartComponent(e.chartConfig)
|
fetchChartComponent(target.chartConfig)
|
||||||
)
|
)
|
||||||
window['$vue'].component(
|
window['$vue'].component(
|
||||||
e.chartConfig.conKey,
|
target.chartConfig.conKey,
|
||||||
fetchConfigComponent(e.chartConfig)
|
fetchConfigComponent(target.chartConfig)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
@ -44,7 +47,7 @@ export const useSync = () => {
|
|||||||
for (const comItem of projectData[key]) {
|
for (const comItem of projectData[key]) {
|
||||||
// 补充 class 上的方法
|
// 补充 class 上的方法
|
||||||
let newComponent: CreateComponentType = await createComponent(
|
let newComponent: CreateComponentType = await createComponent(
|
||||||
comItem.chartConfig
|
comItem.chartConfig as ConfigType
|
||||||
)
|
)
|
||||||
chartEditStore.addComponentList(
|
chartEditStore.addComponentList(
|
||||||
Object.assign(newComponent, {...comItem, id: getUUID()}),
|
Object.assign(newComponent, {...comItem, id: getUUID()}),
|
||||||
|
Loading…
x
Reference in New Issue
Block a user