+ >
{{ props.componentData.chartConfig.title }}
@@ -43,6 +40,7 @@ const props = defineProps({
}
})
+// eslint-disable-next-line vue/no-setup-props-destructure
const { image } = props.componentData.chartConfig
// 计算当前选中目标
@@ -80,7 +78,7 @@ $textSize: 10px;
/* 需要设置最高级,覆盖 hover 的颜色 */
background-color: rgba(0, 0, 0, 0);
.list-img {
- border:1px solid v-bind('themeColor')!important;
+ border: 1px solid v-bind('themeColor') !important;
}
}
.select-modal,
diff --git a/src/views/chart/hooks/useSync.hook.ts b/src/views/chart/hooks/useSync.hook.ts
index 327292cb..7abbf14b 100644
--- a/src/views/chart/hooks/useSync.hook.ts
+++ b/src/views/chart/hooks/useSync.hook.ts
@@ -16,6 +16,7 @@ import { saveProjectApi, fetchProjectApi, uploadFile, updateProjectApi } from '@
import { SyncEnum } from '@/enums/editPageEnum'
import { CreateComponentType, CreateComponentGroupType, ConfigType } from '@/packages/index.d'
import { PublicGroupConfigClass } from '@/packages/public/publicConfig'
+import merge from 'lodash/merge'
// 请求处理
export const useSync = () => {
@@ -47,7 +48,7 @@ export const useSync = () => {
}
if (e.isGroup) {
- ;(e as CreateComponentGroupType).groupList.forEach(groupItem => {
+ (e as CreateComponentGroupType).groupList.forEach(groupItem => {
intComponent(groupItem)
})
} else {
@@ -68,19 +69,19 @@ export const useSync = () => {
let newComponent: CreateComponentType = await createComponent(_componentInstance.chartConfig)
if (callBack) {
if (changeId) {
- callBack(Object.assign(newComponent, { ..._componentInstance, id: getUUID() }))
+ callBack(merge(newComponent, { ..._componentInstance, id: getUUID() }))
} else {
- callBack(Object.assign(newComponent, _componentInstance))
+ callBack(merge(newComponent, _componentInstance))
}
} else {
if (changeId) {
chartEditStore.addComponentList(
- Object.assign(newComponent, { ..._componentInstance, id: getUUID() }),
+ merge(newComponent, { ..._componentInstance, id: getUUID() }),
false,
true
)
} else {
- chartEditStore.addComponentList(Object.assign(newComponent, _componentInstance), false, true)
+ chartEditStore.addComponentList(merge(newComponent, _componentInstance), false, true)
}
}
}
@@ -89,9 +90,9 @@ export const useSync = () => {
// 创建分组
let groupClass = new PublicGroupConfigClass()
if (changeId) {
- groupClass = Object.assign(groupClass, { ...comItem, id: getUUID() })
+ groupClass = merge(groupClass, { ...comItem, id: getUUID() })
} else {
- groupClass = Object.assign(groupClass, comItem)
+ groupClass = merge(groupClass, comItem)
}
// 注册子应用
@@ -112,7 +113,7 @@ export const useSync = () => {
} else {
// 非组件(顺便排除脏数据)
if (key !== 'editCanvasConfig' && key !== 'requestGlobalConfig') return
- Object.assign(chartEditStore[key], projectData[key])
+ merge(chartEditStore[key], projectData[key])
}
}
}
diff --git a/src/views/preview/components/PreviewRenderGroup/index.vue b/src/views/preview/components/PreviewRenderGroup/index.vue
index edecb3f8..d5bdf767 100644
--- a/src/views/preview/components/PreviewRenderGroup/index.vue
+++ b/src/views/preview/components/PreviewRenderGroup/index.vue
@@ -4,7 +4,7 @@
v-for="item in groupData.groupList"
:class="animationsClass(item.styles.animations)"
:key="item.id"
- :style="{
+ :style="{
...getComponentAttrStyle(item.attr, groupIndex),
...getFilterStyle(item.styles),
...getTransformStyle(item.styles)
@@ -15,7 +15,7 @@
:chartConfig="item"
:themeSetting="themeSetting"
:themeColor="themeColor"
- :style="{...getSizeStyle(item.attr)}"
+ :style="{ ...getSizeStyle(item.attr) }"
>
diff --git a/tsconfig.json b/tsconfig.json
index fdf7649f..07a4c65b 100644
--- a/tsconfig.json
+++ b/tsconfig.json
@@ -10,37 +10,16 @@
"resolveJsonModule": true,
"esModuleInterop": true,
"skipLibCheck": true,
- "lib": [
- "es6",
- "ESNext",
- "dom"
- ],
- "types": [
- "vite/client"
- ],
+ "lib": ["es6", "ESNext", "dom"],
+ "types": ["vite/client"],
"paths": {
- "@/*": [
- "src/*"
- ],
- "/#/*": [
- "types/*"
- ]
+ "@/*": ["src/*"],
+ "/#/*": ["types/*"]
},
"noImplicitAny": true, //不允许使用any
// "strictNullChecks": true, //不允许使用null
"noImplicitThis": true //不允许往this上面挂属性
},
- "include": [
- "src/**/*.ts",
- "src/**/*.d.ts",
- "src/**/*.tsx",
- "src/**/*.vue",
- "types/**/*.d.ts",
- "types/**/*.ts",
- ],
- "exclude": [
- "node_modules",
- "dist",
- "**/*.js"
- ]
-}
\ No newline at end of file
+ "include": ["src/**/*.ts", "src/**/*.d.ts", "src/**/*.tsx", "src/**/*.vue", "types/**/*"],
+ "exclude": ["node_modules", "dist", "**/*.js"]
+}