@@ -56,6 +56,7 @@ | |||||
"dayjs": "^1.11.9", | "dayjs": "^1.11.9", | ||||
"js-audio-recorder": "^1.0.7", | "js-audio-recorder": "^1.0.7", | ||||
"pinia": "2.0.33", | "pinia": "2.0.33", | ||||
"pinia-plugin-persistedstate": "^3.2.0", | |||||
"uview-plus": "^3.1.34", | "uview-plus": "^3.1.34", | ||||
"vue": "^3.2.45", | "vue": "^3.2.45", | ||||
"vue-i18n": "^9.1.9" | "vue-i18n": "^9.1.9" | ||||
@@ -10,6 +10,7 @@ import { findImageApi, findGlodApi } from "./api/home"; | |||||
const userInfoModulesPinia = userInfoModules(); | const userInfoModulesPinia = userInfoModules(); | ||||
onLaunch(() => { | onLaunch(() => { | ||||
console.log("App Launch!"); | console.log("App Launch!"); | ||||
// 获取平台及系统信息 | // 获取平台及系统信息 | ||||
uni.getSystemInfo({ | uni.getSystemInfo({ | ||||
success: function (res) { | success: function (res) { | ||||
@@ -18,9 +18,9 @@ | |||||
@change="" | @change="" | ||||
@click="" | @click="" | ||||
></u-swiper> --> | ></u-swiper> --> | ||||
<u-swiper | |||||
<!-- <u-swiper | |||||
v-if="createState == 2" | v-if="createState == 2" | ||||
height="350" | |||||
height="320" | |||||
:list="swiperList" | :list="swiperList" | ||||
keyName="image" | keyName="image" | ||||
previousMargin="60" | previousMargin="60" | ||||
@@ -31,7 +31,20 @@ | |||||
:autoplay="false" | :autoplay="false" | ||||
radius="5" | radius="5" | ||||
bgColor="#1f2123" | bgColor="#1f2123" | ||||
></u-swiper> --> | |||||
<u-swiper | |||||
v-if="createState == 2" | |||||
indicator | |||||
indicatorMode="dot" | |||||
circular | |||||
:radius="30" | |||||
:autoplay="false" | |||||
:list="swiperList" | |||||
keyName="image" | |||||
@change="getSwiperIndex" | |||||
@click="previewImage" | |||||
></u-swiper> | ></u-swiper> | ||||
<view class="checkMore">左右滑动查看更多</view> | |||||
<!-- @click="goLookPhoto" --> | <!-- @click="goLookPhoto" --> | ||||
<image | <image | ||||
v-if="createState != 2" | v-if="createState != 2" | ||||
@@ -71,10 +84,14 @@ const workId = ref(null); //作品id | |||||
const createState = ref(null); //制作状态:1生成中,2完成,3失败 | const createState = ref(null); //制作状态:1生成中,2完成,3失败 | ||||
const styleId = ref(null); //风格id | const styleId = ref(null); //风格id | ||||
const styleData = ref(""); //风格信息 | const styleData = ref(""); //风格信息 | ||||
onLoad((options) => { | onLoad((options) => { | ||||
workId.value = options.id; | |||||
// workId.value = "856433830235262976"; | |||||
// workId.value = options.id; | |||||
workId.value = "857147862095679488"; | |||||
getWorkInfo(); | getWorkInfo(); | ||||
// let getWindowInfo = uni.getWindowInfo().screenWidth; | |||||
// console.log(getWindowInfo, "页面宽度"); | |||||
}); | }); | ||||
async function getWorkInfo() { | async function getWorkInfo() { | ||||
try { | try { | ||||
@@ -86,6 +103,9 @@ async function getWorkInfo() { | |||||
const res = await findWorkByIdApi(workId.value); | const res = await findWorkByIdApi(workId.value); | ||||
if (res.data.photoList) { | if (res.data.photoList) { | ||||
swiperList.value = res.data.photoList; | swiperList.value = res.data.photoList; | ||||
swiperList.value.forEach((item) => { | |||||
previewImageList.value.push(item.image); | |||||
}); | |||||
} | } | ||||
createState.value = res.data.status; | createState.value = res.data.status; | ||||
styleId.value = res.data.digitalAvatarId; | styleId.value = res.data.digitalAvatarId; | ||||
@@ -122,7 +142,18 @@ function goLookPhoto() { | |||||
//#endregion --------------------- | //#endregion --------------------- | ||||
//#region 轮播图 | //#region 轮播图 | ||||
const swiperIndex = ref(0); | |||||
const previewImageList = ref([]); //预览图片列表 | |||||
function getSwiperIndex(index) { | |||||
swiperIndex.value = index.current; | |||||
} | |||||
function previewImage(index) { | |||||
uni.previewImage({ | |||||
current: index, //预览图片的下标 | |||||
urls: previewImageList.value, //预览图片的地址,必须要数组形式,如果不是数组形式就转换成数组形式就可以 | |||||
loop: true, | |||||
}); | |||||
} | |||||
//#endregion --------------------- | //#endregion --------------------- | ||||
//#region | //#region | ||||
@@ -181,9 +212,33 @@ function goLookPhoto() { | |||||
} | } | ||||
} | } | ||||
} | } | ||||
// .u-swiper { | |||||
// width: 100%; | |||||
// height: 695rpx !important; | |||||
// } | |||||
.u-swiper { | .u-swiper { | ||||
width: 100%; | |||||
height: 695rpx !important; | |||||
margin-top: 40rpx; | |||||
margin-bottom: 30rpx; | |||||
width: 540rpx; | |||||
height: 720rpx !important; | |||||
border-radius: 50rpx; | |||||
swiper { | |||||
width: 100%; | |||||
height: 720rpx !important; | |||||
image { | |||||
width: 100%; | |||||
height: 720rpx !important; | |||||
} | |||||
} | |||||
// h5 | |||||
:deep(.u-swiper__wrapper) { | |||||
width: 100%; | |||||
height: 720rpx !important; | |||||
image { | |||||
width: 100%; | |||||
height: 720rpx !important; | |||||
} | |||||
} | |||||
} | } | ||||
.logo { | .logo { | ||||
width: 520rpx; | width: 520rpx; | ||||
@@ -215,7 +270,7 @@ function goLookPhoto() { | |||||
margin-bottom: 30rpx; | margin-bottom: 30rpx; | ||||
} | } | ||||
.anew { | .anew { | ||||
margin-top: 120rpx; | |||||
margin-top: 80rpx; | |||||
} | } | ||||
} | } | ||||
</style> | </style> |
@@ -4,6 +4,7 @@ | |||||
<u-swiper | <u-swiper | ||||
indicator | indicator | ||||
indicatorMode="dot" | indicatorMode="dot" | ||||
circular | |||||
:radius="30" | :radius="30" | ||||
:autoplay="false" | :autoplay="false" | ||||
:list="swiperList" | :list="swiperList" | ||||
@@ -244,6 +245,9 @@ function buyCoin() { | |||||
</script> | </script> | ||||
<style lang="scss"> | <style lang="scss"> | ||||
.page { | |||||
background-color: rgba(24, 25, 26, 1); | |||||
} | |||||
// 轮播图 | // 轮播图 | ||||
.u-swiper { | .u-swiper { | ||||
margin-top: 40rpx; | margin-top: 40rpx; | ||||
@@ -135,6 +135,7 @@ function chooseImage() { | |||||
quality: 40, | quality: 40, | ||||
success: (res2) => { | success: (res2) => { | ||||
showImgUrl.value = res2.tempFilePath; | showImgUrl.value = res2.tempFilePath; | ||||
toCloseStyle(); | |||||
}, | }, | ||||
}); | }); | ||||
} else { | } else { | ||||
@@ -211,6 +212,7 @@ async function toCloseStyle() { | |||||
}, | }, | ||||
success: (res) => { | success: (res) => { | ||||
if (JSON.parse(res.data).code != 200) { | if (JSON.parse(res.data).code != 200) { | ||||
uni.hideLoading(); | |||||
uploadState.value = 4; | uploadState.value = 4; | ||||
return; | return; | ||||
} | } | ||||
@@ -229,6 +231,7 @@ async function toCloseStyle() { | |||||
success: async (res2) => { | success: async (res2) => { | ||||
let moment = res2; | let moment = res2; | ||||
if (JSON.parse(res2.data).code != 200) { | if (JSON.parse(res2.data).code != 200) { | ||||
uni.hideLoading(); | |||||
uploadState.value = 5; | uploadState.value = 5; | ||||
uni.showToast({ | uni.showToast({ | ||||
title: "网络被数字人偷走了, 请稍后重试", | title: "网络被数字人偷走了, 请稍后重试", | ||||
@@ -246,10 +249,13 @@ async function toCloseStyle() { | |||||
// 改变全局的头像 | // 改变全局的头像 | ||||
userInfoModulesPinia.myAvatar = JSON.parse(moment.data).data.url; | userInfoModulesPinia.myAvatar = JSON.parse(moment.data).data.url; | ||||
uploadState.value = 1; | uploadState.value = 1; | ||||
uni.hideLoading(); | |||||
showImgUrl.value = null; | |||||
uni.navigateTo({ | uni.navigateTo({ | ||||
url: "/pages/uploadPhoto/success", | url: "/pages/uploadPhoto/success", | ||||
}); | }); | ||||
} else { | } else { | ||||
uni.hideLoading(); | |||||
uni.showToast({ | uni.showToast({ | ||||
title: "网络被数字人偷走了, 请稍后重试", | title: "网络被数字人偷走了, 请稍后重试", | ||||
icon: "none", | icon: "none", | ||||
@@ -258,19 +264,25 @@ async function toCloseStyle() { | |||||
}, | }, | ||||
fail: () => { | fail: () => { | ||||
uploadState.value = 5; | uploadState.value = 5; | ||||
uni.hideLoading(); | |||||
uni.showToast({ | |||||
title: "网络被数字人偷走了, 请稍后重试", | |||||
icon: "none", | |||||
}); | |||||
}, | }, | ||||
}); | }); | ||||
}, | }, | ||||
fail: () => { | fail: () => { | ||||
uploadState.value = 1; | uploadState.value = 1; | ||||
uni.hideLoading(); | |||||
uni.showToast({ | uni.showToast({ | ||||
title: "网络被数字人偷走了, 请稍后重试", | title: "网络被数字人偷走了, 请稍后重试", | ||||
icon: "none", | icon: "none", | ||||
}); | }); | ||||
}, | }, | ||||
complete: (complete) => { | |||||
uni.hideLoading(); | |||||
}, | |||||
// complete: (complete) => { | |||||
// uni.hideLoading(); | |||||
// }, | |||||
}); | }); | ||||
} | } | ||||
} | } | ||||
@@ -300,6 +312,7 @@ onLoad((options) => { | |||||
userInfoModulesPinia.openId = res2.data.openId; | userInfoModulesPinia.openId = res2.data.openId; | ||||
if (res2.data.token) { | if (res2.data.token) { | ||||
userInfoModulesPinia.token = res2.data.token; | userInfoModulesPinia.token = res2.data.token; | ||||
uni.setStorageSync("token", userInfoModulesPinia.token); | |||||
console.log(userInfoModulesPinia.openId, "获取openid"); | console.log(userInfoModulesPinia.openId, "获取openid"); | ||||
// 获取头像和金币 | // 获取头像和金币 | ||||
const res3 = await findImageApi(); | const res3 = await findImageApi(); | ||||
@@ -365,8 +378,6 @@ onLoad((options) => { | |||||
} | } | ||||
console.log(options); | console.log(options); | ||||
}); | }); | ||||
//#endregion --------------------- | |||||
onShow(() => { | onShow(() => { | ||||
// 若来自我的页面的更换头像按钮,直接触发以下操作 | // 若来自我的页面的更换头像按钮,直接触发以下操作 | ||||
const action = uni.getStorageSync("action"); | const action = uni.getStorageSync("action"); | ||||
@@ -376,7 +387,9 @@ onShow(() => { | |||||
} | } | ||||
}); | }); | ||||
//#region | |||||
//#endregion --------------------- | |||||
//#region 公共方法 | |||||
function goOtherPage(url) { | function goOtherPage(url) { | ||||
uni.navigateTo({ | uni.navigateTo({ | ||||
url: url, | url: url, | ||||
@@ -1,9 +1,10 @@ | |||||
// import { createPinia } from 'pinia' | // import { createPinia } from 'pinia' | ||||
import * as Pinia from 'pinia' | import * as Pinia from 'pinia' | ||||
import { createUnistorage } from 'pinia-plugin-unistorage' | |||||
// import { createUnistorage } from 'pinia-plugin-unistorage' | |||||
import piniaPluginPersistedstate from 'pinia-plugin-persistedstate' | |||||
// const store = createPinia(); | // const store = createPinia(); | ||||
const store = Pinia.createPinia() | const store = Pinia.createPinia() | ||||
store.use(createUnistorage()) | |||||
// store.use(createUnistorage()) | |||||
Pinia.use(piniaPluginPersistedstate) | |||||
export { store, Pinia }; | export { store, Pinia }; |
@@ -3524,6 +3524,11 @@ pify@^2.3.0: | |||||
resolved "https://registry.npmmirror.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" | resolved "https://registry.npmmirror.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" | ||||
integrity sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog== | integrity sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog== | ||||
pinia-plugin-persistedstate@^3.2.0: | |||||
version "3.2.0" | |||||
resolved "https://registry.yarnpkg.com/pinia-plugin-persistedstate/-/pinia-plugin-persistedstate-3.2.0.tgz#9932ca2ae88aa6c0d6763bebc6447d7bd1f097d0" | |||||
integrity sha512-tZbNGf2vjAQcIm7alK40sE51Qu/m9oWr+rEgNm/2AWr1huFxj72CjvpQcIQzMknDBJEkQznCLAGtJTIcLKrKdw== | |||||
pinia-plugin-unistorage@^0.0.17: | pinia-plugin-unistorage@^0.0.17: | ||||
version "0.0.17" | version "0.0.17" | ||||
resolved "https://registry.yarnpkg.com/pinia-plugin-unistorage/-/pinia-plugin-unistorage-0.0.17.tgz#b237d1146069c400b5b81ac5dac0467e3d07db68" | resolved "https://registry.yarnpkg.com/pinia-plugin-unistorage/-/pinia-plugin-unistorage-0.0.17.tgz#b237d1146069c400b5b81ac5dac0467e3d07db68" | ||||