mirror of
https://gitee.com/dromara/go-view.git
synced 2025-02-24 00:02:51 +08:00
!47 修复在编辑项目之前加载数据异常,自动保存导致项目数据清空问题。
Merge pull request !47 from 秋名山路霸/master-fetch
This commit is contained in:
commit
a67cc9f876
@ -15,6 +15,8 @@ import type { ChartColorsNameType, GlobalThemeJsonType } from '@/settings/chartT
|
||||
|
||||
// 项目数据枚举
|
||||
export enum ProjectInfoEnum {
|
||||
// ID
|
||||
PROJECT_ID = "projectId",
|
||||
// 名称
|
||||
PROJECT_NAME = 'projectName',
|
||||
// 描述
|
||||
@ -27,6 +29,7 @@ export enum ProjectInfoEnum {
|
||||
|
||||
// 项目数据
|
||||
export type ProjectInfoType = {
|
||||
[ProjectInfoEnum.PROJECT_ID]: string,
|
||||
[ProjectInfoEnum.PROJECT_NAME]: string,
|
||||
[ProjectInfoEnum.REMARKS]: string,
|
||||
[ProjectInfoEnum.THUMBNAIL]: string,
|
||||
@ -84,6 +87,8 @@ export enum EditCanvasConfigEnum {
|
||||
|
||||
// 画布属性(需保存)
|
||||
export type EditCanvasConfigType = {
|
||||
// ID
|
||||
[EditCanvasConfigEnum.PROJECT_ID]: string,
|
||||
// 项目名称
|
||||
[EditCanvasConfigEnum.PROJECT_NAME]: string,
|
||||
// 项目描述
|
||||
|
@ -15,7 +15,7 @@ import { HistoryActionTypeEnum, HistoryItemType, HistoryTargetTypeEnum } from '@
|
||||
// 画布枚举
|
||||
import { MenuEnum, SyncEnum } from '@/enums/editPageEnum'
|
||||
|
||||
import {
|
||||
import {
|
||||
getUUID,
|
||||
loadingStart,
|
||||
loadingFinish,
|
||||
@ -46,6 +46,7 @@ export const useChartEditStore = defineStore({
|
||||
state: (): ChartEditStoreType => ({
|
||||
// 项目数据
|
||||
projectInfo: {
|
||||
projectId: '',
|
||||
projectName: '',
|
||||
remarks: '',
|
||||
thumbnail: '',
|
||||
|
@ -120,7 +120,7 @@ export const useSync = () => {
|
||||
/**
|
||||
* * 赋值全局数据
|
||||
* @param projectData 项目数据
|
||||
* @returns
|
||||
* @returns
|
||||
*/
|
||||
const updateStoreInfo = (projectData: {
|
||||
id: string,
|
||||
@ -129,7 +129,9 @@ export const useSync = () => {
|
||||
remarks: string,
|
||||
state: number
|
||||
}) => {
|
||||
const { projectName, remarks, indexImage, state } = projectData
|
||||
const { id, projectName, remarks, indexImage, state } = projectData
|
||||
// ID
|
||||
chartEditStore.setProjectInfo(ProjectInfoEnum.PROJECT_ID, id)
|
||||
// 名称
|
||||
chartEditStore.setProjectInfo(ProjectInfoEnum.PROJECT_NAME, projectName)
|
||||
// 描述
|
||||
@ -151,6 +153,8 @@ export const useSync = () => {
|
||||
// 更新全局数据
|
||||
await updateComponent(JSON.parse(res.data.content))
|
||||
return
|
||||
}else {
|
||||
chartEditStore.setProjectInfo(ProjectInfoEnum.PROJECT_ID, fetchRouteParamsLocation())
|
||||
}
|
||||
setTimeout(() => {
|
||||
chartEditStore.setEditCanvas(EditCanvasTypeEnum.SAVE_STATUS, SyncEnum.SUCCESS)
|
||||
@ -173,6 +177,12 @@ export const useSync = () => {
|
||||
return
|
||||
}
|
||||
|
||||
let projectId = chartEditStore.getProjectInfo[ProjectInfoEnum.PROJECT_ID];
|
||||
if(projectId === null || projectId === ''){
|
||||
window['$message'].error('数据初未始化成功,请刷新页面!')
|
||||
return
|
||||
}
|
||||
|
||||
chartEditStore.setEditCanvas(EditCanvasTypeEnum.SAVE_STATUS, SyncEnum.START)
|
||||
|
||||
// 获取缩略图片
|
||||
@ -183,7 +193,7 @@ export const useSync = () => {
|
||||
allowTaint: true,
|
||||
useCORS: true
|
||||
})
|
||||
|
||||
|
||||
// 上传预览图
|
||||
let uploadParams = new FormData()
|
||||
uploadParams.append('object', base64toFile(canvasImage.toDataURL(), `${fetchRouteParamsLocation()}_index_preview.png`))
|
||||
@ -198,7 +208,7 @@ export const useSync = () => {
|
||||
|
||||
// 保存数据
|
||||
let params = new FormData()
|
||||
params.append('projectId', fetchRouteParamsLocation())
|
||||
params.append('projectId', projectId)
|
||||
params.append('content', JSON.stringify(chartEditStore.getStorageInfo || {}))
|
||||
const res= await saveProjectApi(params) as unknown as MyResponseType
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user