This commit is contained in:
@@ -43,7 +43,9 @@
|
|||||||
/* ios打包配置 */
|
/* ios打包配置 */
|
||||||
"ios" : {},
|
"ios" : {},
|
||||||
/* SDK配置 */
|
/* SDK配置 */
|
||||||
"sdkConfigs" : {}
|
"sdkConfigs" : {
|
||||||
|
"payment" : {}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
/* 快应用特有相关 */
|
/* 快应用特有相关 */
|
||||||
|
|||||||
@@ -1,5 +1,11 @@
|
|||||||
<template>
|
<template>
|
||||||
<view class="container">
|
<view class="container">
|
||||||
|
<view v-if="list.length === 0 && !loading" class="empty-state">
|
||||||
|
<view class="empty-icon">📇</view>
|
||||||
|
<view class="empty-title">认证列表为空</view>
|
||||||
|
<view class="empty-desc">当前账号下暂无可实名的卡片</view>
|
||||||
|
</view>
|
||||||
|
|
||||||
<view class="card" v-for="item in list" :key="item.iccid">
|
<view class="card" v-for="item in list" :key="item.iccid">
|
||||||
<view class="flex-row-g20">
|
<view class="flex-row-g20">
|
||||||
<view class="logo">
|
<view class="logo">
|
||||||
@@ -38,6 +44,7 @@
|
|||||||
const userStore = useUserStore();
|
const userStore = useUserStore();
|
||||||
|
|
||||||
let list = reactive([]);
|
let list = reactive([]);
|
||||||
|
let loading = ref(false);
|
||||||
let showIccidModal = ref(false);
|
let showIccidModal = ref(false);
|
||||||
let currentModalIccid = ref('');
|
let currentModalIccid = ref('');
|
||||||
let currentCard = ref(null);
|
let currentCard = ref(null);
|
||||||
@@ -54,6 +61,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
const loadCards = async () => {
|
const loadCards = async () => {
|
||||||
|
loading.value = true;
|
||||||
try {
|
try {
|
||||||
const assetData = await assetApi.getInfo(userStore.state.identifier);
|
const assetData = await assetApi.getInfo(userStore.state.identifier);
|
||||||
|
|
||||||
@@ -81,6 +89,7 @@
|
|||||||
} catch (e) {
|
} catch (e) {
|
||||||
console.error('加载卡列表失败', e);
|
console.error('加载卡列表失败', e);
|
||||||
}
|
}
|
||||||
|
loading.value = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
const getCarrierCategory = (carrierName) => {
|
const getCarrierCategory = (carrierName) => {
|
||||||
@@ -223,4 +232,16 @@
|
|||||||
border-radius: var(--radius-small);
|
border-radius: var(--radius-small);
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.empty-state {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
padding: 120rpx 40rpx;
|
||||||
|
min-height: 400rpx;
|
||||||
|
.empty-icon { font-size: 120rpx; margin-bottom: 30rpx; opacity: 0.6; }
|
||||||
|
.empty-title { font-size: 32rpx; font-weight: 600; color: var(--text-primary); margin-bottom: 16rpx; }
|
||||||
|
.empty-desc { font-size: 26rpx; color: var(--text-tertiary); text-align: center; }
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
@@ -508,13 +508,14 @@
|
|||||||
.balance-label { font-size: 24rpx; opacity: 0.75; }
|
.balance-label { font-size: 24rpx; opacity: 0.75; }
|
||||||
.recharge-btn-wrapper {
|
.recharge-btn-wrapper {
|
||||||
.btn-recharge {
|
.btn-recharge {
|
||||||
background: rgba(255, 255, 255, 0.25);
|
background: #fff;
|
||||||
border: 1rpx solid rgba(255, 255, 255, 0.5);
|
border: none;
|
||||||
color: #fff;
|
color: var(--primary);
|
||||||
font-size: 24rpx;
|
font-size: 26rpx;
|
||||||
padding: 8rpx 24rpx;
|
padding: 12rpx 32rpx;
|
||||||
border-radius: 40rpx;
|
border-radius: 40rpx;
|
||||||
font-weight: 500;
|
font-weight: 600;
|
||||||
|
box-shadow: 0 4rpx 12rpx rgba(0, 0, 0, 0.15);
|
||||||
&::after { border: none; }
|
&::after { border: none; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,11 @@
|
|||||||
<template>
|
<template>
|
||||||
<view class="container">
|
<view class="container">
|
||||||
|
<view v-if="mchList.length === 0 && !loading" class="empty-state">
|
||||||
|
<view class="empty-icon">📡</view>
|
||||||
|
<view class="empty-title">运营商列表为空</view>
|
||||||
|
<view class="empty-desc">当前设备暂无可切换的运营商</view>
|
||||||
|
</view>
|
||||||
|
|
||||||
<view class="card" v-for="item in mchList" :key="item.iccid">
|
<view class="card" v-for="item in mchList" :key="item.iccid">
|
||||||
<view class="flex-row-sb mt-30">
|
<view class="flex-row-sb mt-30">
|
||||||
<view class="flex-row-g20">
|
<view class="flex-row-g20">
|
||||||
@@ -41,6 +47,7 @@
|
|||||||
const userStore = useUserStore();
|
const userStore = useUserStore();
|
||||||
|
|
||||||
let mchList = reactive([]);
|
let mchList = reactive([]);
|
||||||
|
let loading = ref(false);
|
||||||
let switching = ref(false);
|
let switching = ref(false);
|
||||||
|
|
||||||
let opratorList = reactive([
|
let opratorList = reactive([
|
||||||
@@ -55,6 +62,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
const loadCards = async () => {
|
const loadCards = async () => {
|
||||||
|
loading.value = true;
|
||||||
try {
|
try {
|
||||||
const assetData = await assetApi.getInfo(userStore.state.identifier);
|
const assetData = await assetApi.getInfo(userStore.state.identifier);
|
||||||
|
|
||||||
@@ -88,6 +96,7 @@
|
|||||||
} catch (e) {
|
} catch (e) {
|
||||||
console.error('加载卡列表失败', e);
|
console.error('加载卡列表失败', e);
|
||||||
}
|
}
|
||||||
|
loading.value = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
const getCarrierCategory = (carrierName) => {
|
const getCarrierCategory = (carrierName) => {
|
||||||
@@ -148,4 +157,16 @@
|
|||||||
color: var(--text-inverse);
|
color: var(--text-inverse);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.empty-state {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
padding: 120rpx 40rpx;
|
||||||
|
min-height: 400rpx;
|
||||||
|
.empty-icon { font-size: 120rpx; margin-bottom: 30rpx; opacity: 0.6; }
|
||||||
|
.empty-title { font-size: 32rpx; font-weight: 600; color: var(--text-primary); margin-bottom: 16rpx; }
|
||||||
|
.empty-desc { font-size: 26rpx; color: var(--text-tertiary); text-align: center; }
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
Reference in New Issue
Block a user