商城装修:装修模板预览

This commit is contained in:
owen
2023-12-07 21:25:24 +08:00
parent 51a0d8792e
commit 7f79fbf76a
4 changed files with 54 additions and 34 deletions
+16 -6
View File
@@ -1,10 +1,20 @@
import request from '@/sheep/request';
export default {
const DiyTemplateApi = {
// TODO 芋艿:测试
getUsedDiyTemplate: () =>
request({
url: '/app-api/promotion/diy-template/used',
method: 'GET',
}),
getUsedDiyTemplate: () => {
return request({
url: '/app-api/promotion/diy-template/used',
method: 'GET',
});
},
getDiyTemplate: (id) => {
return request({
url: '/app-api/promotion/diy-template/get',
method: 'GET',
params: { id }
});
},
};
export default DiyTemplateApi;
+21 -12
View File
@@ -61,18 +61,18 @@ const app = defineStore({
$router.error('NetworkError');
}
await adaptTemplate(this.template, templateId)
const res = await appApi.init(templateId);
if (res.error === 0) {
this.info = res.data.app;
this.platform = res.data.platform;
this.template = res.data.template;
this.has_wechat_trade_managed = res.data.has_wechat_trade_managed;
if (!res.data.template) {
$router.error('TemplateError');
}
this.chat = res.data.chat;
await adaptTemplate(this.template);
// this.template = res.data.template;
this.has_wechat_trade_managed = res.data.has_wechat_trade_managed;
// if (!res.data.template) {
// $router.error('TemplateError');
// }
this.chat = res.data.chat;
// 加载主题
const sysStore = sys();
@@ -100,17 +100,26 @@ const app = defineStore({
});
// todo: @owen 先做数据适配,后期重构
const adaptTemplate = async (appTemplate) => {
const diyTemplate = await diyTemplateApi.getUsedDiyTemplate();
const tabBar = diyTemplate?.data?.property?.tabBar;
const adaptTemplate = async (appTemplate, templateId) => {
const { data: diyTemplate } = templateId
// 查询指定模板,一般是预览时使用
? await diyTemplateApi.getDiyTemplate(templateId)
: await diyTemplateApi.getUsedDiyTemplate();
// 模板不存在
if (!diyTemplate) {
$router.error('TemplateError');
return
}
const tabBar = diyTemplate?.property?.tabBar;
if (tabBar) {
appTemplate.basic.tabbar = tabBar
if (tabBar?.theme) {
appTemplate.basic.theme = tabBar?.theme;
}
}
appTemplate.home = diyTemplate?.data?.home;
appTemplate.user = diyTemplate?.data?.user;
appTemplate.home = diyTemplate?.home;
appTemplate.user = diyTemplate?.user;
}
export default app;