|
|
@ -11,75 +11,42 @@ |
|
|
|
Tiktok |
|
|
|
</view> |
|
|
|
<view class="sign"> |
|
|
|
<image @click="toSignin" src="../../static/home/sign.png" mode="widthFix"></image> |
|
|
|
<image @click="showLanguage = true" src="../../static/home/language.png" mode="widthFix"></image> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
|
|
|
|
<!-- 通知 --> |
|
|
|
<view class="notification"> |
|
|
|
<u-notice-bar :text="notification[notificationType[$i18n.locale]] || ''" bgColor="#000" |
|
|
|
color="white"></u-notice-bar> |
|
|
|
<view class="home-title content"> |
|
|
|
<view>Commodities</view> |
|
|
|
</view> |
|
|
|
|
|
|
|
<!-- 用户信息 --> |
|
|
|
<view class="user-info content"> |
|
|
|
<view class="user-name">{{ userInfo.account }}</view> |
|
|
|
<view class="member-image"> |
|
|
|
<image :src="vipInfo.icon" mode="aspectFit"></image> |
|
|
|
</view> |
|
|
|
<view class="swiper"> |
|
|
|
<swiper class="swiper-box" @change="swiperChange" :current="swiperDotIndex"> |
|
|
|
<swiper-item v-for="(item, index) in 3" :key="index"> |
|
|
|
<view class="swiper-item"> |
|
|
|
<image src="@/static/home/product.jpg" mode="widthFix"></image> |
|
|
|
</view> |
|
|
|
</swiper-item> |
|
|
|
</swiper> |
|
|
|
</view> |
|
|
|
|
|
|
|
<!-- 菜单列表 --> |
|
|
|
<view class="menu-list content"> |
|
|
|
<view v-for="(item,index) in onList" :key="index" @click="clickMenu(index)" class="menu-item"> |
|
|
|
<image :src="item.icon" mode="aspectFit"></image> |
|
|
|
<view class="menu-descript">{{ $t(`page.home.${menuTitles[index]}`) }}</view> |
|
|
|
</view> |
|
|
|
<view class="home-title content"> |
|
|
|
<view>About Us</view> |
|
|
|
</view> |
|
|
|
|
|
|
|
<!-- 虚拟滚动 --> |
|
|
|
<virtualScroll></virtualScroll> |
|
|
|
<virtualScroll1></virtualScroll1> |
|
|
|
|
|
|
|
<!-- 会员等级信息 --> |
|
|
|
<view class="member-list content"> |
|
|
|
<view class="member-item" v-for="(item, index) in vipList" :key="index"> |
|
|
|
|
|
|
|
<view class="status-icon"> |
|
|
|
<view v-if="item.current" class="current">current</view> |
|
|
|
<uni-icons v-else type="locked" size="20" color="#000"></uni-icons> |
|
|
|
</view> |
|
|
|
|
|
|
|
<view class="img-box"> |
|
|
|
<image :src="item.icon" mode="aspectFit"></image> |
|
|
|
</view> |
|
|
|
|
|
|
|
<view class="menber-descript">{{ item.title }}</view> |
|
|
|
|
|
|
|
<!-- 权益列表 --> |
|
|
|
<view class="equity-list"> |
|
|
|
<view class="equity-item"> |
|
|
|
<!-- Receive a set of 40 apps data tasks --> |
|
|
|
{{ $t('page.home.equity_item_1', [item.num]) }} |
|
|
|
</view> |
|
|
|
|
|
|
|
<view class="equity-item"> |
|
|
|
{{ $t('page.home.equity_item_2', [item.percentage]) }} |
|
|
|
</view> |
|
|
|
|
|
|
|
<view class="equity-item"> |
|
|
|
{{ $t('page.home.equity_item_3', [item.price]) }} |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
<view class="about-us"> |
|
|
|
<view class="about-content"> |
|
|
|
<view class="title">TikTok Shop</view> |
|
|
|
<view class="desc">Growth Marketing Company</view> |
|
|
|
<view class="click">Click to view introduction</view> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
|
|
|
|
<!-- 协议列表 --> |
|
|
|
<view class="agreement-list"> |
|
|
|
<view v-for="(item,index) in outList" :key="index" @click="toinstructions(index)" class="agreement-item"> |
|
|
|
<image :src="item.icon" mode="aspectFit"></image> |
|
|
|
<view class="agreement-descript">{{ $t(`page.home.${agreementTitles[index]}`) }}</view> |
|
|
|
</view> |
|
|
|
|
|
|
|
<view class="home-title content"> |
|
|
|
<view>Commission</view> |
|
|
|
</view> |
|
|
|
|
|
|
|
<view class="roll"> |
|
|
|
<virtualScroll></virtualScroll> |
|
|
|
</view> |
|
|
|
|
|
|
|
|
|
|
@ -87,10 +54,13 @@ |
|
|
|
|
|
|
|
<!-- 客服列表 --> |
|
|
|
<serviceList :show="showService" :serverList="serverList" @close="closeServiceList"></serviceList> |
|
|
|
|
|
|
|
|
|
|
|
<!-- 弹窗 --> |
|
|
|
<popUpWindow :show="showPopUp" @close="closePopUp"></popUpWindow> |
|
|
|
|
|
|
|
<!-- 选择语言弹框 --> |
|
|
|
<changeLanguage :show.sync="showLanguage" @close="closeLanguage"></changeLanguage> |
|
|
|
|
|
|
|
</view> |
|
|
|
</template> |
|
|
|
|
|
|
@ -99,7 +69,7 @@ |
|
|
|
import serviceList from '@/components/serviceList/serviceList.vue' |
|
|
|
import popUpWindow from '../../components/popUpWindow/popUpWindow.vue' |
|
|
|
import virtualScroll from '../../components/virtualScroll/virtualScroll.vue' |
|
|
|
import virtualScroll1 from '../../components/virtualScroll1/virtualScroll1.vue' |
|
|
|
import changeLanguage from '@/components/changeLanguage/changeLanguage.vue' |
|
|
|
|
|
|
|
export default { |
|
|
|
components: { |
|
|
@ -107,160 +77,32 @@ |
|
|
|
serviceList, |
|
|
|
popUpWindow, |
|
|
|
virtualScroll, |
|
|
|
virtualScroll1 |
|
|
|
changeLanguage |
|
|
|
}, |
|
|
|
data() { |
|
|
|
return { |
|
|
|
notification: {}, |
|
|
|
showService: false, |
|
|
|
menuTitles: ['CustomerService', 'Certifcate', 'Deposit', 'Withdraw'], |
|
|
|
agreementTitles: ['agreement_item_1', 'agreement_item_2', 'agreement_item_3', 'agreement_item_4'], |
|
|
|
serverList: [], |
|
|
|
onList: [], |
|
|
|
outList: [], |
|
|
|
vipList: [], |
|
|
|
userInfo: {}, |
|
|
|
vipInfo: {}, |
|
|
|
notificationType: { |
|
|
|
en: 'keyEnglish', |
|
|
|
es: "keySpanish", |
|
|
|
zh: "keyChinese", |
|
|
|
ar : "keyA", |
|
|
|
fr : "keyF", |
|
|
|
ru : "keyE" |
|
|
|
}, |
|
|
|
showPopUp : uni.getStorageSync('clickPopUp') ? false : true |
|
|
|
// showPopUp: uni.getStorageSync('clickPopUp') ? false : true, |
|
|
|
showPopUp: false, |
|
|
|
showLanguage: false, |
|
|
|
|
|
|
|
swiperDotIndex: 0 |
|
|
|
} |
|
|
|
}, |
|
|
|
onShow() { |
|
|
|
this.getIndexIcon() |
|
|
|
this.getNotice() |
|
|
|
this.getUserInfo() |
|
|
|
this.forgetPass() |
|
|
|
|
|
|
|
}, |
|
|
|
methods: { |
|
|
|
//跳转证书页面 |
|
|
|
toCertificate() { |
|
|
|
uni.navigateTo({ |
|
|
|
url: `/pages/instructions/instructions?index=1&type=onList` |
|
|
|
}) |
|
|
|
}, |
|
|
|
|
|
|
|
//跳转充值页面 |
|
|
|
toPurse() { |
|
|
|
uni.navigateTo({ |
|
|
|
url: '/pages/purse/purse?type=1' |
|
|
|
}) |
|
|
|
}, |
|
|
|
|
|
|
|
//跳转提现页面 |
|
|
|
toWithdraw() { |
|
|
|
uni.navigateTo({ |
|
|
|
url: '/pages/withdraw/withdraw?type=1' |
|
|
|
}) |
|
|
|
}, |
|
|
|
|
|
|
|
//显示客服列表 |
|
|
|
revealServiceList() { |
|
|
|
this.showService = true; |
|
|
|
}, |
|
|
|
|
|
|
|
//关闭客服列表 |
|
|
|
closeServiceList() { |
|
|
|
this.showService = false; |
|
|
|
}, |
|
|
|
|
|
|
|
//跳转说明页面(六合一) |
|
|
|
toinstructions(index) { |
|
|
|
this.$play() |
|
|
|
uni.navigateTo({ |
|
|
|
url: `/pages/instructions/instructions?index=${index}` |
|
|
|
}) |
|
|
|
}, |
|
|
|
|
|
|
|
//获取首页图标 |
|
|
|
getIndexIcon() { |
|
|
|
this.request('indexIcon').then(res => { |
|
|
|
if (res.code == 200) { |
|
|
|
this.onList = res.result.onList; |
|
|
|
this.outList = res.result.outList; |
|
|
|
} |
|
|
|
}) |
|
|
|
}, |
|
|
|
|
|
|
|
//获取vip套餐 |
|
|
|
getVipShop() { |
|
|
|
this.request('vipShop').then(res => { |
|
|
|
if (res.code == 200) { |
|
|
|
res.result.forEach(item => { |
|
|
|
if (this.vipInfo && item.id == this.vipInfo.id) { |
|
|
|
item.current = true |
|
|
|
} |
|
|
|
}) |
|
|
|
this.vipList = res.result |
|
|
|
} |
|
|
|
}) |
|
|
|
}, |
|
|
|
|
|
|
|
//获取通知 |
|
|
|
getNotice() { |
|
|
|
this.request('indexNotice').then(res => { |
|
|
|
if (res.code == 200) { |
|
|
|
this.notification = res.result |
|
|
|
} |
|
|
|
}) |
|
|
|
}, |
|
|
|
|
|
|
|
//用户点击菜单 |
|
|
|
clickMenu(index) { |
|
|
|
this.$play() |
|
|
|
if (index == 0) { |
|
|
|
this.revealServiceList() |
|
|
|
} |
|
|
|
if (index == 1) { |
|
|
|
this.toCertificate() |
|
|
|
} |
|
|
|
if (index == 2) { |
|
|
|
this.toPurse() |
|
|
|
} |
|
|
|
if (index == 3) { |
|
|
|
this.toWithdraw() |
|
|
|
} |
|
|
|
}, |
|
|
|
|
|
|
|
//获取用户信息 |
|
|
|
getUserInfo() { |
|
|
|
this.request('userInfo').then(res => { |
|
|
|
if (res.code == 200) { |
|
|
|
this.userInfo = res.result.userInfo |
|
|
|
this.vipInfo = res.result.vip |
|
|
|
this.getVipShop() |
|
|
|
} |
|
|
|
}) |
|
|
|
}, |
|
|
|
|
|
|
|
//忘记密码(获取客服列表) |
|
|
|
forgetPass() { |
|
|
|
this.request('forgetPass').then(res => { |
|
|
|
if (res.code == 200) { |
|
|
|
this.serverList = res.result |
|
|
|
} |
|
|
|
}) |
|
|
|
}, |
|
|
|
|
|
|
|
//跳转签到页面 |
|
|
|
toSignin() { |
|
|
|
this.$play() |
|
|
|
uni.navigateTo({ |
|
|
|
url: '/pages/signIn/signIn' |
|
|
|
}) |
|
|
|
}, |
|
|
|
|
|
|
|
//关闭弹框 |
|
|
|
closePopUp(){ |
|
|
|
this.showPopUp = false |
|
|
|
swiperChange(item) { |
|
|
|
console.log(item); |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
</script> |
|
|
@ -272,7 +114,7 @@ |
|
|
|
margin: 0 auto; |
|
|
|
background-size: 100%; |
|
|
|
background-repeat: no-repeat; |
|
|
|
padding-bottom: 200rpx; |
|
|
|
padding-bottom: 120rpx; |
|
|
|
|
|
|
|
.content { |
|
|
|
width: 96%; |
|
|
@ -309,151 +151,82 @@ |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.user-info { |
|
|
|
.home-title { |
|
|
|
position: relative; |
|
|
|
display: flex; |
|
|
|
flex-direction: column; |
|
|
|
justify-content: center; |
|
|
|
align-items: center; |
|
|
|
margin: 20rpx 0rpx; |
|
|
|
|
|
|
|
.user-name { |
|
|
|
font-size: 34rpx; |
|
|
|
font-size: 36rpx; |
|
|
|
height: 120rpx; |
|
|
|
|
|
|
|
&::before, |
|
|
|
&::after { |
|
|
|
position: absolute; |
|
|
|
top: 50%; |
|
|
|
content: ''; |
|
|
|
width: 20%; |
|
|
|
border-top: 2rpx solid black; |
|
|
|
} |
|
|
|
|
|
|
|
.member-image { |
|
|
|
|
|
|
|
image { |
|
|
|
width: 150rpx; |
|
|
|
height: 110rpx; |
|
|
|
} |
|
|
|
&::before { |
|
|
|
left: 10%; |
|
|
|
} |
|
|
|
|
|
|
|
&::after { |
|
|
|
right: 10%; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.menu-list, |
|
|
|
.agreement-list { |
|
|
|
display: flex; |
|
|
|
flex-wrap: wrap; |
|
|
|
justify-content: space-around; |
|
|
|
text-align: center; |
|
|
|
.swiper { |
|
|
|
.swiper-box { |
|
|
|
height: 200px; |
|
|
|
} |
|
|
|
|
|
|
|
.menu-item, |
|
|
|
.agreement-item { |
|
|
|
.swiper-item { |
|
|
|
/* #ifndef APP-NVUE */ |
|
|
|
display: flex; |
|
|
|
/* #endif */ |
|
|
|
flex-direction: column; |
|
|
|
justify-content: center; |
|
|
|
align-items: center; |
|
|
|
width: calc(25% - 20px); |
|
|
|
flex-shrink: 0; |
|
|
|
|
|
|
|
image { |
|
|
|
width: 110rpx; |
|
|
|
height: 110rpx; |
|
|
|
} |
|
|
|
|
|
|
|
.menu-descript { |
|
|
|
box-sizing: border-box; |
|
|
|
width: 100%; |
|
|
|
text-align: center; |
|
|
|
word-break: break-all; |
|
|
|
font-size: 24rpx; |
|
|
|
margin: 10rpx 0rpx; |
|
|
|
padding: 0rpx 12rpx; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.agreement-item { |
|
|
|
font-size: 19rpx; |
|
|
|
|
|
|
|
height: 200px; |
|
|
|
color: #fff; |
|
|
|
|
|
|
|
image { |
|
|
|
width: 90rpx; |
|
|
|
height: 90rpx; |
|
|
|
width: 30%; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
.agreement-list { |
|
|
|
padding-bottom: 40rpx; |
|
|
|
} |
|
|
|
.about-us , |
|
|
|
.roll { |
|
|
|
background-image: url('@/static/home/bg.jpeg'); |
|
|
|
background-size: 100%; |
|
|
|
height: 400rpx; |
|
|
|
|
|
|
|
.member-list { |
|
|
|
display: flex; |
|
|
|
flex-wrap: wrap; |
|
|
|
justify-content: space-between; |
|
|
|
margin: 20rpx auto; |
|
|
|
|
|
|
|
.member-item { |
|
|
|
position: relative; |
|
|
|
box-sizing: border-box; |
|
|
|
padding: 15rpx; |
|
|
|
width: calc(50% - 10rpx); |
|
|
|
border-radius: 10rpx; |
|
|
|
border: 1px solid #00000080; |
|
|
|
margin-bottom: 25rpx; |
|
|
|
|
|
|
|
.status-icon { |
|
|
|
box-sizing: border-box; |
|
|
|
position: absolute; |
|
|
|
width: 100%; |
|
|
|
display: flex; |
|
|
|
justify-content: flex-end; |
|
|
|
padding: 0rpx 20rpx; |
|
|
|
|
|
|
|
.current { |
|
|
|
display: flex; |
|
|
|
align-items: center; |
|
|
|
justify-content: center; |
|
|
|
width: 120rpx; |
|
|
|
background-image: url('@/static/home/current.png'); |
|
|
|
background-size: 100%; |
|
|
|
background-repeat: no-repeat; |
|
|
|
color: black; |
|
|
|
font-size: 25rpx; |
|
|
|
} |
|
|
|
} |
|
|
|
.about-content { |
|
|
|
padding: 10% 0rpx 0rpx 5%; |
|
|
|
|
|
|
|
.img-box { |
|
|
|
display: flex; |
|
|
|
justify-content: center; |
|
|
|
width: 150rpx; |
|
|
|
height: 110rpx; |
|
|
|
overflow: hidden; |
|
|
|
margin: 20rpx auto; |
|
|
|
|
|
|
|
image { |
|
|
|
width: 150rpx; |
|
|
|
height: 110rpx; |
|
|
|
} |
|
|
|
.title , |
|
|
|
.click { |
|
|
|
font-size: 40rpx; |
|
|
|
font-weight: bold; |
|
|
|
} |
|
|
|
|
|
|
|
.menber-descript { |
|
|
|
text-align: center; |
|
|
|
color: $uni-bg-color-app; |
|
|
|
font-size: 28rpx; |
|
|
|
margin-bottom: 10rpx; |
|
|
|
.desc { |
|
|
|
font-size: 20rpx; |
|
|
|
color: #464648; |
|
|
|
} |
|
|
|
|
|
|
|
.equity-list { |
|
|
|
// color: white; |
|
|
|
font-size: 20rpx; |
|
|
|
padding-bottom: 40rpx; |
|
|
|
|
|
|
|
.equity-item { |
|
|
|
padding-left: 15rpx; |
|
|
|
position: relative; |
|
|
|
word-break: break-all; |
|
|
|
|
|
|
|
&::before { |
|
|
|
position: absolute; |
|
|
|
left: 0; |
|
|
|
top: 10rpx; |
|
|
|
content: ''; |
|
|
|
width: 5rpx; |
|
|
|
height: 5rpx; |
|
|
|
background: white; |
|
|
|
border-radius: 50%; |
|
|
|
} |
|
|
|
} |
|
|
|
.click { |
|
|
|
font-size: 22rpx; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.roll { |
|
|
|
background-image: url('@/static/home/bg1.jpg'); |
|
|
|
} |
|
|
|
} |
|
|
|
</style> |