feat: 低代码平台增加应用列表

This commit is contained in:
wangxuefeng
2025-03-04 14:46:19 +08:00
parent 09ff94c188
commit 6fc133bb7d
24 changed files with 798 additions and 785 deletions

View File

@@ -6,5 +6,8 @@ VITE_BASE_URL = /
# 前端可见变量(必须以 VITE_ 开头)
VITE_PORT = 10010
VITE_BASE_API_URL = 'https://custom-chart-pre-api.shiyue.com/'
# VITE_BASE_API_URL = 'https://custom-chart-pre-api.shiyue.com/'
VITE_BASE_API_URL = 'https://custom-chart-api.shiyuegame.com/'
VITE_DEBUG_MODE = true

View File

@@ -11,7 +11,7 @@ export default defineConfig(({ mode }) => {
return {
server: {
port: env.VITE_PORT,
port: Number(env.VITE_PORT),
cors: true,
},
// @ts-ignore
@@ -31,6 +31,9 @@ export default defineConfig(({ mode }) => {
// path: path.resolve(process.cwd(), "../../dist/renderer"),
// clean: true,
// },
script: {
target: "es2022",
},
},
};
});

View File

@@ -17,10 +17,10 @@
"@sy/low-code-shared": "workspace:*",
"@sy/web-vitals": "workspace:*",
"@tanstack/vue-query": "^5.66.9",
"@vtj/core": "^0.10.6",
"@vtj/icons": "0.10.6",
"@vtj/materials": "^0.10.6",
"@vtj/renderer": "^0.10.6",
"@vtj/core": "^0.10.7",
"@vtj/icons": "0.10.7",
"@vtj/materials": "^0.10.7",
"@vtj/renderer": "^0.10.7",
"axios": "^1.8.1",
"core-js": "^3.40.0",
"element-plus": "^2.9.4",

View File

@@ -11,18 +11,25 @@ import { getFile } from './io';
const lowCodeService = new LowCodeService();
onMounted(() => {
const handshake = new Postmate.Model({});
handshake.then(parent => {
parent.emit('sync-context', 'Hello, World!');
});
});
const model = {
name: '',
applicationId: -1,
projectId: -1,
fileId: '',
url: '',
}
const { data: file, isFetching } = useQuery({
queryKey: ['getFile'],
queryFn: async () => {
return getFile('45tnbgeme');
await handshake.then(parent => {
parent.emit('sync-context', 'Hello, World!');
Object.assign(model, parent.model);
console.log('model', model);
});
return getFile(model.fileId);
},
});
@@ -40,7 +47,7 @@ const { provider, onReady } = createProvider({
// runtime: 'web',
service: lowCodeService,
project: {
id: '2'
id: '4'
},
});

View File

@@ -1,10 +1,8 @@
import axios from "axios";
const baseApiUrl = "https://custom-chart-pre-api.shiyue.com/";
// 创建独立实例
const instance = axios.create({
baseURL: baseApiUrl, // 基础URL直接放在实例配置中
baseURL: import.meta.env.VITE_BASE_API_URL, // 基础URL直接放在实例配置中
});
// 请求拦截器改为使用实例

View File

@@ -3,10 +3,14 @@ import { type ProjectSchema, type BlockSchema, ProjectModel } from "@vtj/core";
import { BaseService } from "@vtj/renderer";
import { getProject, getFile as getLowCodeFile } from "@/io";
let initProject: ProjectModel = {};
export class LowCodeService extends BaseService {
public async init(project: ProjectSchema) {
console.log("init", project);
const remoteProject = await getProject("2");
initProject = project;
const remoteProject = await getProject(project.id);
console.log("remoteProject", remoteProject);
const model = new ProjectModel(remoteProject);
const dsl = model.toDsl();
return Promise.resolve(dsl);
@@ -21,14 +25,14 @@ export class LowCodeService extends BaseService {
.map(([key, value]) => [key, JSON.stringify(value)])
),
};
updateProject("2", newProject);
const model = new ProjectModel(project);
storage.save(`project_${model.id}`, model.toDsl());
updateProject(initProject.id, newProject);
const model = new ProjectModel(newProject);
// storage.save(`project_${model.id}`, model.toDsl());
return Promise.resolve(true);
}
public async getFile(id: string): Promise<BlockSchema> {
console.log("getFile", id);
console.log("1111getFile", id);
return getLowCodeFile(id).then((lowCodeFile) => {
if (lowCodeFile.dsl) {
return Promise.resolve(lowCodeFile.dsl as BlockSchema);

View File

@@ -7,7 +7,10 @@
"@/*": ["src/*"],
"$vtj/*": [".vtj/*"]
},
"lib": ["ES2015", "DOM"]
"lib": ["ES2015", "DOM"],
"module": "NodeNext",
"target": "ES2022",
"moduleResolution": "NodeNext"
},
"include": ["src"],
"exclude": [".vtj"],