优化mynft列表展示, 增加本地缓存
This commit is contained in:
parent
b912ce8e4d
commit
f45684a346
@ -1,2 +1,2 @@
|
||||
VUE_APP_WALLET_INFURAID='e7743d46923911fa8850619b7a7f6d9d'
|
||||
VUE_APP_BASE_API='https://game2006api-test.kingsome.cn'
|
||||
VUE_APP_BASE_API='https://market.cebg.games'
|
||||
|
@ -67,6 +67,7 @@ export default class MyNft extends Vue {
|
||||
private filters = ['All Items', 'Normal', 'Selling', 'Renting']
|
||||
private totalPage = 1
|
||||
private currentPage = 1
|
||||
private dataCache: Map<any, INftData[]> = new Map()
|
||||
|
||||
get accountId() {
|
||||
return AppModule.accountId
|
||||
@ -112,39 +113,20 @@ export default class MyNft extends Vue {
|
||||
if (this.nftState > 0) {
|
||||
reqData.state = this.nftState - 1
|
||||
}
|
||||
this.nftList.length = 0
|
||||
if (this.dataCache.has(reqData)) {
|
||||
this.nftList = this.dataCache.get(reqData)!
|
||||
} else {
|
||||
this.nftList.length = 0
|
||||
}
|
||||
const res: any = await getNftList(reqData)
|
||||
if (res.nfts) {
|
||||
this.nftList.length = 0
|
||||
for (const data of res.nfts) {
|
||||
// const nftInfo: INftAttr = data.info
|
||||
// nftInfo.mintTime = data.mint_time
|
||||
// nftInfo.owner = data.owner_address
|
||||
// nftInfo.advancedCount = data.info?.advanced_count || 0
|
||||
// nftInfo.successRate = data.info?.success_rate || 0
|
||||
// const nftData: any = {
|
||||
// name: data.info.name,
|
||||
// class: ((data.info?.job || '0') + '').toLowerCase(),
|
||||
// recordId: data.token_id,
|
||||
// id: data.token_id,
|
||||
// skelName: `n_${(data.info?.name || '').toLowerCase()}`,
|
||||
// directBuy: false,
|
||||
// showBuy: false,
|
||||
// type: parseInt(data.type + '')
|
||||
// }
|
||||
// if (data.currency_list && data.currency_list.length > 0) {
|
||||
// const priceData: any = data.currency_list[0]
|
||||
// nftData.discount = priceData.discount_rate
|
||||
// nftData.price = priceData.original_price
|
||||
// nftData.priceDiscount = priceData.discount_price
|
||||
// nftData.currency = priceData.name
|
||||
// nftData.coinAddress = priceData.contract_address
|
||||
// }
|
||||
// nftData.info = nftInfo
|
||||
const nftData = parseNftData(data)
|
||||
this.nftList.push(nftData)
|
||||
}
|
||||
this.dataCache.set(reqData, this.nftList)
|
||||
}
|
||||
console.log(this.nftList)
|
||||
if (res.page) {
|
||||
const page = res.page
|
||||
this.totalPage = page.total_pages || 1
|
||||
|
Loading…
x
Reference in New Issue
Block a user