chore: 更新部分接口

This commit is contained in:
wangxuefeng
2025-02-28 20:38:51 +08:00
parent 2fa8ed74e5
commit cc6a1e6bc1
5 changed files with 207 additions and 265 deletions

View File

@@ -12,13 +12,22 @@ import {
} from '@vtj/core';
import { Storage, mapToObject } from '@vtj/utils';
import { BaseService } from '@vtj/renderer';
import { getProject } from '@/io';
import { getProject, updateProject } from '@/io';
const storage = new Storage({
type: 'local',
expired: 0
// prefix: '__VTJ_'
});
const stringifyFields = [
'config',
'pages',
'dependencies',
'blocks',
'apis',
'meta'
];
export class StorageService extends BaseService {
public async init(project: ProjectSchema): Promise<ProjectSchema> {
// console.log('init-project', project);
@@ -29,8 +38,9 @@ export class StorageService extends BaseService {
// const dsl = Object.assign(model.toDsl(), match || {});
// console.log('init-project-dsl', dsl);
// storage.save(`project_${model.id}`, dsl);
const remoteProject = await getProject(3);
// return Promise.resolve(dsl);
const remoteProject = await getProject('2');
console.log('remoteProject', remoteProject);
const model = new ProjectModel(remoteProject);
const dsl = model.toDsl();
console.log('dsl', dsl);
@@ -45,6 +55,17 @@ export class StorageService extends BaseService {
}
public saveProject(project: ProjectSchema): Promise<boolean> {
console.log('saveProject', project);
const newProject = {
...project,
...Object.fromEntries(
Object.entries(project)
.filter(([key]) => stringifyFields.includes(key))
.map(([key, value]) => [key, JSON.stringify(value)])
)
};
console.log('newProject', newProject);
updateProject('2', newProject);
const model = new ProjectModel(project);
storage.save(`project_${model.id}`, model.toDsl());
return Promise.resolve(true);