Browse Source

1.0.0:完善艺术家界面

feature-1.0
chengkun 4 years ago
parent
commit
cb90eff3c7
  1. 21
      api/creator.js
  2. 14
      api/myCollection.js
  3. 67
      pages/creator/creator.vue
  4. 20
      pages/userInfo/myCollection/myCollection.vue

21
api/creator.js

@ -4,18 +4,17 @@ const serviceTitle = '/img'
//POST 传参需要用 data //POST 传参需要用 data
//获取banner列表 //获取banner列表
export function getBannerList(data) { export function getBannerList() {
return request({ return request({
url: `${serviceTitle}/img/mini/tiktok/listBanner`, url: `${serviceTitle}/img/mini/tiktok/listBanner`,
method: 'get', method: 'get'
params: data
})
}
//获取小程序用户图片列表
export function getUserImgList() {
return request({
url: `${serviceTitle}/img/mini/tiktok/tiktokUserImgs`,
method: 'get'
}) })
} }
//判断用户是否存在
// export function getUserCheck(data) {
// return request({
// url: `/${url}/dev-api/service/front/user/getUserCheck`,
// method: 'post',
// data: data
// })
//}

14
api/myCollection.js

@ -0,0 +1,14 @@
import request from '@/utils/request'
const serviceTitle = '/img'
//GET 传参需要用 params
//POST 传参需要用 data
//获取用户收藏列表
export function getCollectionList(data) {
return request({
url: `${serviceTitle}/img/mini/tiktok/listTiktokCollection`,
method: 'post',
data: data
})
}

67
pages/creator/creator.vue

@ -3,34 +3,46 @@
<view> <view>
<swiper class="swiper-box" :autoplay="autoplay" :interval="interval" :duration="duration" :indicator-dots="indicatorDots"> <swiper class="swiper-box" :autoplay="autoplay" :interval="interval" :duration="duration" :indicator-dots="indicatorDots">
<swiper-item v-for="(item, index) in banner" :key="index"> <swiper-item v-for="(item, index) in banner" :key="index">
<cover-image class="img" @click="linkTo(item)" :src="item.bannerImg"></cover-image> <image class="img" @click="linkTo(item)" :src="item.bannerImg"></image>
</swiper-item> </swiper-item>
</swiper> </swiper>
</view> </view>
<view> <view>
<uni-list v-for="(item, index) in user" :key="index"> <uni-list v-for="(item, index) in userImgList" :key="index">
<uni-list-item v-bind:title="item" clickable @click="getUser(item)"></uni-list-item> <!-- 展示用户相关信息 -->
<template>
<image class="head" :src="item.img"></image>
<view class="userName">{{item.username}}</view>
</template>
<!-- 展示用户对应三张图 -->
<template>
<view v-for="(pic,param) in item.imgList" :key="param">
<image class="threeImg" @click="linkTo(item)" :src="pic.imgUrl"></image>
</view>
</template>
</uni-list> </uni-list>
</view> </view>
</view> </view>
</template> </template>
<script> <script>
import {getBannerList} from '@/api/creator.js' import {getBannerList,getUserImgList} from '@/api/creator.js'
export default { export default {
data() { data() {
return { return {
banner: [], banner: [],
userImgList:[],
autoplay: true, autoplay: true,
interval: 2000, interval: 2000,
duration: 500, duration: 1000,
indicatorDots: true, indicatorDots: true,
user:['Kim','Jim','Bob']
} }
}, },
onLoad() { onLoad() {
this.getBanner(); this.getBanner();
this.getUserImgList();
}, },
methods: { methods: {
linkTo(item){ linkTo(item){
@ -40,13 +52,15 @@
showCancel: false showCancel: false
}); });
}, },
getUser(item){
getUserDetails(item){
//TODO
console.log(item); console.log(item);
}, },
async getBanner(){ async getBanner(){
const res = await getBannerList() const res = await getBannerList()
if(res.data.code === 200){ if(res.data.code === 200){
console.log('相應結果2',res);
this.banner = res.data.data this.banner = res.data.data
}else{ }else{
uni.showModal({ uni.showModal({
@ -54,7 +68,21 @@
showCancel: false showCancel: false
}); });
} }
},
async getUserImgList(){
const res = await getUserImgList()
if(res.data.code === 200){
this.userImgList = res.data.data
console.log('userListImg',this.userImgList)
}else{
uni.showModal({
content: '用户图片列表加载失败!',
showCancel: false
});
}
} }
} }
} }
</script> </script>
@ -81,4 +109,27 @@
width: 100%; width: 100%;
height: 100%; height: 100%;
} }
.head {
flex: 1;
display: flex;
width:80rpx;
height:80rpx;
justify-content: space-between;
align-items: flex-end;
}
.userName {
flex: 1;
display: flex;
margin-left: 100rpx;
justify-content: space-between;
align-items: flex-end;
}
.threeImg {
height:300rpx;
width:200rpx;
}
</style> </style>

20
pages/userInfo/myCollection/myCollection.vue

@ -5,14 +5,32 @@
</template> </template>
<script> <script>
import {getCollectionList} from '@/api/myCollection.js'
export default { export default {
data() { data() {
return { return {
} }
}, },
onLoad() {
this.getMyCollection(JSON.stringify(1))
},
methods: { methods: {
getMyCollection(userId){
const data = {
"userId" : userId
}
const res = getCollectionList(JSON.stringify(data))
if(res.data.code === 200){
//this.banner = res.data.data
console.log(res)
}else{
uni.showModal({
content: '我的收藏加载失败!',
showCancel: false
});
}
}
} }
} }
</script> </script>

Loading…
Cancel
Save