feat: maidian

This commit is contained in:
zzc
2026-02-12 17:22:47 +08:00
parent 54e8581b81
commit 313435d13f
13 changed files with 142 additions and 32 deletions

View File

@@ -99,7 +99,7 @@
:key="item.id"
class="grid-item"
:class="{ active: currentAvatar?.id === item.id }"
@tap="currentAvatar = item"
@tap="toggleAvatar(item)"
>
<image :src="item.imageUrl" class="grid-img" mode="aspectFill" />
<view v-if="currentAvatar?.id === item.id" class="check"></view>
@@ -377,6 +377,10 @@ onLoad((options) => {
shareToken.value = options.shareToken;
saveViewRequest("avatar_download", options.shareToken);
}
trackRecord({
eventName: "avatar_page_visit",
eventType: `visit`,
});
});
onReachBottom(() => {
@@ -387,13 +391,32 @@ onReachBottom(() => {
} else if (activeTool.value === "decor") {
loadDecors();
}
trackRecord({
eventName: "avatar_load_more",
eventType: `load_more`,
elementId: activeTool.value,
});
});
const goBack = () => {
uni.navigateBack();
};
const toggleAvatar = (avatar) => {
currentAvatar.value = avatar;
trackRecord({
eventName: "avatar_click",
eventType: `select`,
elementId: avatar?.id || "",
});
};
const toggleFrame = (frame) => {
trackRecord({
eventName: "avatar_frame_click",
eventType: `select`,
elementId: frame?.id || "",
});
if (selectedFrame.value === frame) {
selectedFrame.value = null;
} else {
@@ -402,6 +425,11 @@ const toggleFrame = (frame) => {
};
const toggleDecor = (decor) => {
trackRecord({
eventName: "avatar_decor_click",
eventType: `select`,
elementId: decor?.id || "",
});
if (selectedDecor.value === decor) {
selectedDecor.value = null;
} else {