You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

96 lines
2.2 KiB

11 months ago
import { reactive } from "vue";
import { onLoad } from "@dcloudio/uni-app";
import { getModelToMake, getImgHistory } from "@/apis/api";
export default function () {
const token = uni.getStorageSync("token");
const data: any = reactive({
moduleId: "",
promptId: "",
token: token,
modelImg: "", //模版图片
modelTitle: "", //模版标题
memoList: [], //模版描述
starNum: 0, //消耗金豆数量
pageNum: 1,
pageSize: 10,
totalPage: 0,
imgHistoryList: [],
loadContent: {
contentdown: "点击加载更多",
contentrefresh: "正在加载...",
contentnomore: "没有更多数据了~",
},
loadStatus: "more",
});
onLoad((options: any) => {
data.moduleId = options.modelId;
data.promptId = options.promptId;
getModelToMakeFn();
getImgHistoryFn();
});
//获取模板数据
function getModelToMakeFn() {
const param = {
model_id: data.moduleId,
prompt_id: data.promptId,
token: data.token,
};
getModelToMake(param).then((res: any) => {
if (res.success) {
data.modelImg = res.img_url;
data.modelTitle = res.record.model_name;
data.starNum = res.record.star;
const memo = res.record.memo;
if (memo && memo !== "") {
data.memoList = memo.split("。");
}
} else {
uni.showToast({
icon: "none",
title: "数据获取失败!",
});
}
});
}
//获取历史相册
function getImgHistoryFn() {
const param = {
page: data.pageNum,
limit: data.pageSize,
token: data.token,
};
getImgHistory(param).then((res: any) => {
if (res.success) {
data.imgHistoryList = res.data;
// changeLoadStatus();
} else {
//changeLoadStatus();
uni.showToast({
icon: "none",
title: "历史相册数据获取失败!",
});
}
});
}
//改变底部loading状态
// function changeLoadStatus() {
// if (data.pageNum == data.totalPage || data.totalPage == 0) {
// data.loadStatus = "no-more";
// } else {
// data.loadStatus = "more";
// }
// }
//立即制作
function toMake() {}
return {
data,
toMake,
};
}