Browse Source

合并

master
j1ack 3 years ago
parent
commit
0668a3ebd1
  1. 7
      App.vue
  2. 12
      components/tabBar/tabBar.vue
  3. 347
      pages/markets/trade.vue
  4. 292
      pages/me/myTeam.vue
  5. 147
      pages/subscription/index.vue
  6. BIN
      static/me/myTeambg.png

7
App.vue

@ -37,7 +37,12 @@ export default {
margin: 0; margin: 0;
} }
/deep/ .u-empty{
position: absolute;
top: 150%;
left: 50%;
transform: translateX(-50%);
}
page { page {

12
components/tabBar/tabBar.vue

@ -192,18 +192,6 @@ export default {
display: flex; display: flex;
z-index: 8; z-index: 8;
box-sizing: border-box; box-sizing: border-box;
&::after {
display: block;
position: absolute;
content: '';
background: #fff;
width: 268rpx;
height: 10rpx;
border-radius: 10rpx;
top: 140rpx;
left: 242rpx;
}
} }
.tabbar_item { .tabbar_item {

347
pages/markets/trade.vue

@ -7,10 +7,11 @@
</navigation> </navigation>
<view class="content"> <view class="content">
<view class="transactionSide"> <view class="transactionSide">
<transaction></transaction> <transaction :contractInfo="contractInfo"></transaction>
</view> </view>
<view class="positionSide"> <view class="positionSide">
<positionList v-on:depthChange="depthChange" :marketDetail="marketDetail" :bboList="bboList"></positionList> <positionList v-on:depthChange="depthChange" :marketDetail="marketDetail" :bboList="bboList">
</positionList>
</view> </view>
</view> </view>
<view class="orderList"> <view class="orderList">
@ -52,13 +53,15 @@
name: "trade", name: "trade",
data() { data() {
return { return {
/* 配置信息 */
contractInfo: {},
popupShow: false, popupShow: false,
symbolList: [], symbolList: [],
symbol: null, symbol: null,
marketDetail:null, marketDetail: null,
bboList:{}, bboList: {},
tradeList:{}, tradeList: {},
webSocketChannel:{} webSocketChannel: {}
}; };
}, },
computed: { computed: {
@ -66,81 +69,91 @@
return this.$t("markets"); return this.$t("markets");
}, },
}, },
onLoad() { onLoad() {
this.getSymbolGroup(); this.getSymbolGroup();
this.initWebSocket(); this.initWebSocket();
this.symbol=uni.getStorageSync('symbol'); this.symbol = uni.getStorageSync('symbol');
if(this.symbol!=null){ if (this.symbol != null) {
this.getMarketDetail() this.getMarketDetail()
this.getBboList(); this.getBboList();
this.getTradeList(); this.getTradeList();
} }
}, },
onShow() { onShow() {
console.log(11111, uni.getStorageSync('symbol')); console.log(11111, uni.getStorageSync('symbol'));
}, },
methods: { methods: {
getTradeList(){ //
const tradeList = this.$api.tradeList({ contractConfig() {
"symbol": this.symbol.symbol this.$api.contractConfig({
}); pair: this.marketDetail.pair
tradeList.then(res => { }).then(res => {
this.tradeList = res this.contractInfo = res
this.contractInfo.leverageCon = [];
}) this.contractInfo.leverageCon = this.contractInfo.leverage.split(',')
.catch(e => { })
console.log(e) },
uni.showToast({ getTradeList() {
title: e, const tradeList = this.$api.tradeList({
icon: 'none', "symbol": this.symbol.symbol
duration: 2500 });
}) tradeList.then(res => {
}) this.tradeList = res
},
getBboList(){ })
const bboList = this.$api.bboList({ .catch(e => {
"symbol": this.symbol.symbol console.log(e)
}); uni.showToast({
bboList.then(res => { title: e,
this.bboList = res icon: 'none',
duration: 2500
}) })
.catch(e => { })
console.log(e) },
uni.showToast({ getBboList() {
title: e, const bboList = this.$api.bboList({
icon: 'none', "symbol": this.symbol.symbol
duration: 2500 });
}) bboList.then(res => {
}) this.bboList = res
},
getMarketDetail(){ })
const marketDetail = this.$api.marketDetail({ .catch(e => {
"symbol": this.symbol.symbol console.log(e)
}); uni.showToast({
marketDetail.then(res => { title: e,
this.marketDetail = res icon: 'none',
duration: 2500
}) })
.catch(e => { })
console.log(e) },
uni.showToast({ getMarketDetail() {
title: e, const marketDetail = this.$api.marketDetail({
icon: 'none', "symbol": this.symbol.symbol
duration: 2500 });
}) marketDetail.then(res => {
}) this.marketDetail = res
this.contractConfig()
})
.catch(e => {
console.log(e)
uni.showToast({
title: e,
icon: 'none',
duration: 2500
})
})
}, },
getSymbolGroup() { getSymbolGroup() {
const symbolGroup = this.$api.symbolGroup({ const symbolGroup = this.$api.symbolGroup({
"model": "contract" "model": "contract"
}); });
symbolGroup.then(res => { symbolGroup.then(res => {
this.symbolList = res.USDT this.symbolList = res.USDT
if(this.symbol==null){ if (this.symbol == null) {
this.symbol=this.symbolList[0] this.symbol = this.symbolList[0]
} }
}) })
@ -155,90 +168,90 @@
}, },
initWebSocket() { initWebSocket() {
this.websock = new this.$websocket(this.$constant.WSSURL) // xxx URL this.websock = new this.$websocket(this.$constant.WSSURL) // xxx URL
var that = this var that = this
this.websock.getWebSocketMsg(data => { this.websock.getWebSocketMsg(data => {
if (data.channel === 'conn') { if (data.channel === 'conn') {
that.websockId = data.data that.websockId = data.data
that.subpairsgroup() that.subpairsgroup()
that.subbbo() that.subbbo()
that.subtrade() that.subtrade()
that.submarketDetail() that.submarketDetail()
} else if (data.channel === 'market.pairsgroup') { } else if (data.channel === 'market.pairsgroup') {
that.symbolList = data.data.USDT; that.symbolList = data.data.USDT;
}else if (data.channel === that.webSocketChannel.bbo) { } else if (data.channel === that.webSocketChannel.bbo) {
that.bboList = data.data; that.bboList = data.data;
}else if (data.channel === that.webSocketChannel.bbo) { } else if (data.channel === that.webSocketChannel.bbo) {
that.bboList = data.data; that.bboList = data.data;
}else if(data.channel === that.webSocketChannel.trade){ } else if (data.channel === that.webSocketChannel.trade) {
that.tradeList=data.data; that.tradeList = data.data;
}else if(data.channel === that.webSocketChannel.detail){ } else if (data.channel === that.webSocketChannel.detail) {
that.marketDetail=data.data; that.marketDetail = data.data;
} }
}); });
}, },
// //
subpairsgroup(){ subpairsgroup() {
this.subWebSocket('pairsgroup',['market.pairsgroup']) this.subWebSocket('pairsgroup', ['market.pairsgroup'])
}, },
// //
unsubpairsgroup(){ unsubpairsgroup() {
this.unsubWebSocket('pairsgroup',['market.pairsgroup']) this.unsubWebSocket('pairsgroup', ['market.pairsgroup'])
}, },
subbbo(){ subbbo() {
this.webSocketChannel.bbo='market.'+this.symbol.symbol+".bbo"; this.webSocketChannel.bbo = 'market.' + this.symbol.symbol + ".bbo";
this.subWebSocket('bbo',[this.webSocketChannel.bbo]) this.subWebSocket('bbo', [this.webSocketChannel.bbo])
}, },
unsubbbo(){ unsubbbo() {
this.unsubWebSocket('bbo',[this.webSocketChannel.bbo]) this.unsubWebSocket('bbo', [this.webSocketChannel.bbo])
}, },
subtrade(){ subtrade() {
this.webSocketChannel.trade='market.'+this.symbol.symbol+".trade"; this.webSocketChannel.trade = 'market.' + this.symbol.symbol + ".trade";
this.subWebSocket('trade',[this.webSocketChannel.trade]) this.subWebSocket('trade', [this.webSocketChannel.trade])
}, },
unsubtrade(){ unsubtrade() {
this.unsubWebSocket('trade',[this.webSocketChannel.trade]) this.unsubWebSocket('trade', [this.webSocketChannel.trade])
}, },
submarketDetail(){ submarketDetail() {
this.webSocketChannel.detail='market.'+this.symbol.symbol+".detail"; this.webSocketChannel.detail = 'market.' + this.symbol.symbol + ".detail";
this.subWebSocket('detail',[this.webSocketChannel.detail]) this.subWebSocket('detail', [this.webSocketChannel.detail])
}, },
unsubmarketDetail(){ unsubmarketDetail() {
this.unsubWebSocket('detail',[this.webSocketChannel.detail]) this.unsubWebSocket('detail', [this.webSocketChannel.detail])
}, },
subWebSocket(type,channel) { subWebSocket(type, channel) {
const data = { const data = {
event: 'sub', event: 'sub',
type: type, type: type,
id: this.websockId, id: this.websockId,
channel: channel channel: channel
}; };
this.websock.webSocketSendMsg(data) this.websock.webSocketSendMsg(data)
console.log("websocket发送", data); console.log("websocket发送", data);
}, },
unsubWebSocket(type,channel) { unsubWebSocket(type, channel) {
const data = { const data = {
event: 'un_sub', event: 'un_sub',
type: type, type: type,
id: this.websockId, id: this.websockId,
channel: channel channel: channel
}; };
this.websock.webSocketSendMsg(data) this.websock.webSocketSendMsg(data)
}, },
depthChange(e) { depthChange(e) {
console.log(e); console.log(e);
@ -260,18 +273,18 @@
* 切换当前交易货币对 * 切换当前交易货币对
*/ */
switchTo(item) { switchTo(item) {
this.popupShow = false; this.popupShow = false;
this.unsubbbo() this.unsubbbo()
this.unsubtrade() this.unsubtrade()
this.unsubmarketDetail() this.unsubmarketDetail()
this.symbol=item; this.symbol = item;
uni.setStorageSync('symbol',this.symbol); uni.setStorageSync('symbol', this.symbol);
this.getMarketDetail() this.getMarketDetail()
this.getBboList(); this.getBboList();
this.getTradeList(); this.getTradeList();
this.subbbo() this.subbbo()
this.subtrade() this.subtrade()
this.submarketDetail() this.submarketDetail()
} }

292
pages/me/myTeam.vue

@ -1,94 +1,214 @@
<template> <template>
<view class="main"> <view class="main">
<!-- nav --> <!-- nav -->
<navigation>{{ i18n.MyTeam }}</navigation> <navigation>{{ i18n.MyTeam }}</navigation>
<view class="body"> <view class="body">
<view class="userItem" v-for="(item, index) in 4" :key="index"> <view class="top flex">
<u-icon class="icon" :name="'../../static/me/Ellipse 85.png'" size="92rpx" width="92rpx"></u-icon> <view class="item">
<view> <view class="t1">
<view class="email">krichjmadif0985@gmail.com</view> 394
<view class="date">2022/08/06</view> </view>
<u-button class="button" color="#F2FE8D" throttleTime="500">{{ i18n.Fresh }}</u-button> <view class="t2">
</view> Number of clionts
</view> </view>
</view> </view>
</view> <view class="item">
<view class="t1">
0
</view>
<view class="t2">
Earnlings yesterday
</view>
</view>
<view class="item">
<view class="t1">
9343492
</view>
<view class="t2">
Total income
</view>
</view>
</view>
<u-subsection :list="list" activeColor="#00E8A2" inactiveColor="#fff" :current="curNow"
@change="sectionChange" bgColor="#211F32"></u-subsection>
<view class="container">
<table class="table">
<thead class="thead">
<tr>
<td>User</td>
<td>Financial funds</td>
<td>Time</td>
</tr>
</thead>
<tbody class="tbody">
<tr>
<td>98374354705</td>
<td>349849</td>
<td>2021.10.14</td>
</tr>
<tr>
<td>98374354705</td>
<td>349849</td>
<td>2021.10.14</td>
</tr>
<tr>
<td>98374354705</td>
<td>349849</td>
<td>2021.10.14</td>
</tr>
</tbody>
</table>
</view>
</view>
</view>
</template> </template>
<script> <script>
export default { export default {
name: "myTeam", name: "myTeam",
data() { data() {
return { return {
}; list: ['My client', 'Income record'],
}, // keyName
computed: { // list: [{name: ''}, {name: ''}, {name: ''}],
i18n() { curNow: 0,
return this.$t("me");
}, };
}, },
onLoad() { computed: {
}, i18n() {
onShow() { }, return this.$t("me");
methods: { },
},
}, onLoad() {},
} onShow() {},
methods: {
sectionChange(index) {
this.curNow = index;
}
},
}
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.main { .table{
width: 100%;
.body { text-align: center;
overflow: hidden; border-collapse: collapse;
margin-top: 200rpx; .thead{
padding: 0 32rpx; height: 84rpx;
line-height: 84rpx;
.userItem { tr{
position: relative; td{
background: #211F32; color: #A1A0A8;
border-radius: 32rpx; font-size: 24rpx;
display: flex; }
flex-wrap: wrap; }
margin-top: 32rpx; }
.tbody{
.icon { tr{
height: 160rpx; height: 84rpx;
margin-left: 20rpx; line-height: 84rpx;
margin-right: 26rpx; border-top: 2rpx solid #323045 !important;
} td{
color: #fff;
.email { font-size: 24rpx;
width: 520rpx; }
height: 52rpx; }
line-height: 52rpx; }
margin-top: 28rpx; }
font-size: 32rpx; .container {
} padding: 0 32rpx;
}
.date {
width: 180rpx; /deep/ .u-subsection--button {
height: 52rpx; height: 80rpx;
line-height: 52rpx; }
font-size: 28rpx;
} /deep/ .u-subsection--button__bar {
background: #323045;
.button { height: 80rpx;
position: absolute; }
top: 72rpx;
right: 32rpx; .flex {
width: 120rpx; display: flex;
height: 48rpx; align-items: center;
line-height: 48rpx; justify-content: space-between;
font-size: 28rpx; }
color: #15141F !important;
margin-left: 200rpx; .top {
margin-top: 20rpx; padding: 68rpx 32rpx;
border-radius: 16rpx; background: url('@/static/me/myTeambg.png') no-repeat;
} background-size: cover;
}
.item {
} text-align: center;
line-height: 60rpx;
} }
.t2 {
font-size: 24rpx;
color: #A1A0A8;
}
.t1 {
color: #00E8A2;
font-size: 32rpx;
font-weight: bolder;
}
}
.main {
.body {
overflow: hidden;
margin-top: 200rpx;
.userItem {
position: relative;
background: #211F32;
border-radius: 32rpx;
display: flex;
flex-wrap: wrap;
margin-top: 32rpx;
.icon {
height: 160rpx;
margin-left: 20rpx;
margin-right: 26rpx;
}
.email {
width: 520rpx;
height: 52rpx;
line-height: 52rpx;
margin-top: 28rpx;
font-size: 32rpx;
}
.date {
width: 180rpx;
height: 52rpx;
line-height: 52rpx;
font-size: 28rpx;
}
.button {
position: absolute;
top: 72rpx;
right: 32rpx;
width: 120rpx;
height: 48rpx;
line-height: 48rpx;
font-size: 28rpx;
color: #15141F !important;
margin-left: 200rpx;
margin-top: 20rpx;
border-radius: 16rpx;
}
}
}
}
</style> </style>

147
pages/subscription/index.vue

@ -2,19 +2,23 @@
<view class="main"> <view class="main">
<!-- nav --> <!-- nav -->
<view class="nav-head"> <view class="nav-head">
<view class="navItem" @click="pageState = 'product'" :class="{ select: pageState === 'product' }"> <view class="navItem" @click="pageState = 'product',getInfo('product')"
:class="{ select: pageState === 'product' }">
{{ i18n.Product }} {{ i18n.Product }}
</view> </view>
<view class="navItem" @click="pageState = 'pending'" :class="{ select: pageState === 'pending' }"> <view class="navItem" @click="pageState = 'pending',getInfo('pending')"
:class="{ select: pageState === 'pending' }">
{{ i18n.Pending }} {{ i18n.Pending }}
</view> </view>
<view class="navItem" @click="pageState = 'complete'" :class="{ select: pageState === 'complete' }"> <view class="navItem" @click="pageState = 'complete',getInfo('complete')"
:class="{ select: pageState === 'complete' }">
{{ i18n.Complete }} {{ i18n.Complete }}
</view> </view>
</view> </view>
<!-- Product 产品列表 --> <!-- Product 产品列表 -->
<view class="cardList"> <view class="cardList">
<view class="card" v-for="(item, index) in info" :key="index" @click="gotoDetails(item,index)"> <view class="card" v-for="(item, index) in info" :key="index" @click="gotoDetails(item,index)"
v-if="pageState === 'product'">
<!-- 卡片条件渲染 --> <!-- 卡片条件渲染 -->
<!-- product --> <!-- product -->
<card-header v-if="pageState === 'product'" :iconName="baseURL+'/coins/'+item.coinCode+'.png'" <card-header v-if="pageState === 'product'" :iconName="baseURL+'/coins/'+item.coinCode+'.png'"
@ -26,44 +30,50 @@
<key-value-row :keyName="i18n.STLTotalCirculation" :value="item.issueAmount"></key-value-row> <key-value-row :keyName="i18n.STLTotalCirculation" :value="item.issueAmount"></key-value-row>
<key-value-row :keyName="i18n.PrivateSalePrice" :value="item.initalPrice+item.coinCode"> <key-value-row :keyName="i18n.PrivateSalePrice" :value="item.initalPrice+item.coinCode">
</key-value-row> </key-value-row>
<key-value-row :keyName="i18n.ICOTime" :value="item.startDate"></key-value-row> <key-value-row :keyName="i18n.ICOTime" :value="item.timestr"></key-value-row>
</view> </view>
</view>
<view class="card" v-for="(item, index) in userInfoObj" :key="index" v-if="pageState === 'pending'">
<!-- pending --> <!-- pending -->
<card-header v-if="pageState === 'pending'" :iconName="'../../static/maskets/bye.png'" <card-header v-if="pageState === 'pending'" :iconName="baseURL+'/coins/'+item.coinSymbol+'.png'"
:title="'973430980989323445'" :rightName="'Pending'" fontColor="#00E8A2"> :title="item.orderNo" :rightName="item.status" :fontColor="item.status=='undone'?'#A1A0A8':item.status=='cancel'?'#F4506A':'#00E8A2'">
</card-header> </card-header>
<view class="dataBody" v-if="pageState === 'pending'"> <view class="dataBody" v-if="pageState === 'pending'">
<key-value-row :keyName="i18n.Price" :value="'284145.61'"></key-value-row> <key-value-row :keyName="i18n.Price" :value="item.pendingPrice"></key-value-row>
<key-value-row :keyName="i18n.Quantity" :value="'1000'"></key-value-row> <key-value-row :keyName="i18n.Quantity" :value="item.pendingAmount"></key-value-row>
<key-value-row :keyName="i18n.USDT" :value="'3166.61'"></key-value-row> <key-value-row :keyName="i18n.USDT" :value="parseInt(item.usdtPrice,16)"></key-value-row>
<key-value-row :keyName="i18n.Time" :value="'2022/08/06 14:51'"></key-value-row> <key-value-row :keyName="i18n.Time" :value="item.addTimeStr"></key-value-row>
</view>
<!-- complete -->
<card-header v-if="pageState === 'complete'" :iconName="'../../static/maskets/bye.png'"
:title="'973430980989323445'" :rightName="'complete'" fontColor="#00E8A2">
</card-header>
<view class="dataBody" v-if="pageState === 'complete'">
<key-value-row :keyName="i18n.Price" :value="'284145.61'"></key-value-row>
<key-value-row :keyName="i18n.Quantity" :value="'1000'"></key-value-row>
<key-value-row :keyName="i18n.ConfirmAmount" :value="'999'" :leftColor="'#F2FE8D'"
:rightColor="'#F2FE8D'"></key-value-row>
<key-value-row :keyName="i18n.USDT" :value="'3166.61'"></key-value-row>
<key-value-row :keyName="i18n.CheckTheNumberoOfUSDT" :value="'2000'" :leftColor="'#F2FE8D'"
:rightColor="'#F2FE8D'">
</key-value-row>
<key-value-row :keyName="i18n.Time" :value="'2022/08/06 14:51'"></key-value-row>
</view> </view>
</view>
<view class="card" v-for="(item, index) in userInfoObj" :key="index" v-if="pageState === 'complete'">
<!-- complete -->
<card-header v-if="pageState === 'complete'" :iconName="baseURL+'/coins/'+item.coinSymbol+'.png'"
:title="item.orderNo" :rightName="item.status" :fontColor="item.status=='undone'?'#A1A0A8':item.status=='cancel'?'#F4506A':'#00E8A2'">
</card-header>
<view class="dataBody" v-if="pageState === 'complete'">
<key-value-row :keyName="i18n.Price" :value="item.pendingPrice"></key-value-row>
<key-value-row :keyName="i18n.Quantity" :value="item.pendingAmount"></key-value-row>
<key-value-row :keyName="i18n.ConfirmAmount" :value="item.tradeAmount" :leftColor="'#F2FE8D'"
:rightColor="'#F2FE8D'"></key-value-row>
<key-value-row :keyName="i18n.USDT" :value="parseInt(item.usdtPrice,16)"></key-value-row>
<key-value-row :keyName="i18n.CheckTheNumberoOfUSDT" :value="item.realAmount" :leftColor="'#F2FE8D'"
:rightColor="'#F2FE8D'">
</key-value-row>
<key-value-row :keyName="i18n.Time" :value="item.addTimeStr"></key-value-row>
</view> </view>
</view>
</view> </view>
<u-empty :text="i18n.Dataisempty" mode="data" v-if="info.length==0"></u-empty> <u-empty :text="i18n.Dataisempty" mode="data" v-if="info.length==0&&pageState=='product'"></u-empty>
<u-loadmore :status="loadStatus" :loading-text="loadingText" :loadmore-text="loadmoreText" <u-loadmore :status="loadStatus" :loading-text="loadingText" :loadmore-text="loadmoreText"
:nomore-text="nomoreText" v-if="info.length" height="80" /> :nomore-text="nomoreText" v-if="info.length&&pageState=='product'" height="80" />
<!-- 申购记录的为空提示 -->
<u-empty :text="i18n.Dataisempty" mode="data" v-if="userInfoObj.length==0" v-show="pageState=='undone'||pageState=='complete'"></u-empty>
<u-loadmore :status="loadStatus2" :loading-text="loadingText2" :loadmore-text="loadmoreText2"
:nomore-text="nomoreText2" v-if="userInfoObj.length" height="80" />
<!-- tabBar --> <!-- tabBar -->
<tab-bar :selectActive="4"></tab-bar> <tab-bar :selectActive="4"></tab-bar>
</view> </view>
@ -94,12 +104,17 @@
form: { form: {
pageNumber: 1, pageNumber: 1,
pageSize: 20, pageSize: 20,
type: 'crypto', status: '',
}, },
//
isLoadMore2: false, //
loadStatus2: 'loadmore',
loadingText2: this.$t("login").toload,
loadmoreText2: this.$t("login").pullup,
nomoreText2: this.$t("login").Nomore,
} }
}, },
onLoad() { onLoad() {},
},
onShow() { onShow() {
this.baseURL = constant.BASE_URL this.baseURL = constant.BASE_URL
this.getGoods(); this.getGoods();
@ -111,11 +126,71 @@
} }
}, },
methods: { methods: {
// product
getInfo(e) {
this.info=[];
this.userInfoObj=[]
if (e == 'product') {
this.getGoods()
}
if (e == 'pending') {
this.form.status = 'undone'
this.getList()
}
if (e == 'complete') {
this.form.status = 'complete'
this.getList()
}
},
//
getList() {
this.isLoadMore2 = true
api.subscriptionRecord(this.form).then(res => {
if (res.content.length) {
if (this.form.pageNumber > 1) {
this.userInfoObj = this.userInfoObj.concat(res.content)
for (var i = 0; i < this.userInfoObj.length; i++) {
if (this.userInfoObj[i].addTime) {
this.userInfoObj[i].timestr = this.$index.formatyymmddhhmmss(this.userInfoObj[
i].addTime)
}
}
} else {
this.userInfoObj = res.content
for (var i = 0; i < this.userInfoObj.length; i++) {
if (this.userInfoObj[i].addTime) {
this.userInfoObj[i].timestr = this.$index.formatyymmddhhmmss(this.userInfoObj[
i].addTime)
}
}
}
if (this.userInfoObj.length >= Number(res.totalElements)) { //
this.isLoadMore2 = true
this.loadStatus2 = 'nomore'
} else {
this.isLoadMore2 = false
}
} else {
this.isLoadMore2 = true
this.loadStatus2 = 'nomore'
this.userInfoObj = []
}
this.$forceUpdate()
})
},
//
getGoods() { getGoods() {
api.subscriptionList().then(res => { api.subscriptionList().then(res => {
this.info = res; this.info = res;
this.isLoadMore = true this.isLoadMore = true
this.loadStatus = 'nomore' this.loadStatus = 'nomore'
for (var i = 0; i < this.info.length; i++) {
if (this.info[i].startDate) {
this.info[i].timestr = this.$index.formatyymmddhhmmss(this.info[
i].startDate)
}
}
}) })
}, },
gotoDetails(i, index) { gotoDetails(i, index) {

BIN
static/me/myTeambg.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 MiB

Loading…
Cancel
Save