当前位置: 首页 > ai >正文

uniapp+<script setup lang=“ts“>解决有数据与暂无数据切换显示,有数据加载时暂无数据闪现(先加载空数据)问题

声明showEmpty 为false,在接口返回处判断有数据时设置showEmpty 为false,接口返回数据为空则判断showEmpty 为true (这样就解决有数据的时候会闪现暂无数据的问题啦)

<!--* @Date: 2024-02-26 03:38:52* @LastEditTime: 2025-06-05 09:02:58* @Description: 救援详情页面
-->
<template><view class="consolidated-order"><view class="consolidated-order-filter"><view class="consolidated-order-filter-cont flex-center-between"><select-date ref="dateRef" @change-date="changeDate" /><select-time ref="timeRef" @change-time="changeTime" /><select-goods ref="goodsRef" @change-goods="changeGoods" /></view></view><scroll-viewv-if="!showEmpty"scroll-with-animation:scroll-y="true":show-scrollbar="false"class="consolidated-cont"><view class="service-order-item-box"><view v-for="(item, index) in splicingOrdersList" :key="index" class="service-order-item"><view class="service-order-item-time">{{ timeFormat(item.departureTime) }} - {{ timeFormat(item.arriveTime) }}</view><viewv-for="(item1, index1) in item.flyRecordModelList":key="index1"class="service-order-item-cont flex-center-start"><view class="cont-left flex-center-between"><view class="fly-no-box fly-no-yellow flex-center-start"><view class="fly-no-text">架次</view><view class="fly-no-num">{{ item1.flyNo || '--' }}</view></view><view class="fly-id">飞行记录ID:{{ item1.id }}</view></view><view class="cont-right flex-center-start"><view class="balance-num">空位:{{ item1.balanceNum }}人</view><view class="service-order-item-btn" @click="splicingOrders(item1)">拼单</view></view></view></view></view></scroll-view><!-- 拼单空状态 --><view v-if="showEmpty" class="empty-wrap"><empty-block :image-src="EMPTY_PNG" text="还没有拼单信息哦" /></view></view>
</template><script setup lang="ts">
import config from '@/../config/config';
import { qryCanJoinFly, combineServerOrder } from '@/services/api-order';
import { timeFormat } from '@/utils/DateUtils';
import { onLoad } from '@dcloudio/uni-app';
import { computed, ref, onMounted } from 'vue';
const EMPTY_PNG = `${config.assetPath}/images/book/empty-order.png`;
import { useStore } from 'vuex';
const store = useStore();
const openId = computed(() => store.state.userStore?.userInfo.openId);
const changeDate = (e) => {};
const changeTime = (e) => {};
const changeGoods = (e) => {};
const splicingOrdersList = ref();
const orderNoVal = ref();
const showEmpty = ref(false); //是否显示空状态
// 拼单列表
const getCanJoinFly = async () => {// ATO24080900075466有数据await qryCanJoinFly({orderNo: orderNoVal.value,}).then((res) => {if (res?.code == 0 && res?.data) {if (res?.data.length <= 0) {showEmpty.value = true; //没有数据的时候展示空状态} else {showEmpty.value = false; //有数据则正常展示数据}splicingOrdersList.value = res?.data;}});
};
const splicingOrders = (item) => {uni.showModal({title: '',content: '是否选择拼机',confirmText: '确认',success: (data) => {if (data.confirm) {let params = {orderNo: orderNoVal.value,combineFlyId: item.id,openId: openId.value,};combineServerOrder(params).then((res) => {if (res?.code == 0) {uni.showToast({title: '拼机成功',icon: 'success',});}});} else if (data.cancel) {console.log('用户取消了操作');}},});
};
onLoad((option) => {orderNoVal.value = option.orderNo || '';
});
onMounted(() => {getCanJoinFly();
});
</script><style lang="scss">
@import './index.scss';
</style>

有数据

 

空状态

 

http://www.xdnf.cn/news/12007.html

相关文章:

  • QObject::connect: Cannot queue arguments of type ‘xxx‘
  • 4.2 HarmonyOS NEXT分布式AI应用实践:联邦学习、跨设备协作与个性化推荐实战
  • Flask-SQLAlchemy使用小结
  • 学习路之php--性能优化
  • Linux信号捕捉技术深度解析
  • html-pre标签
  • 解锁Java线程池:性能优化的关键
  • Spring Boot缓存组件Ehcache、Caffeine、Redis、Hazelcast
  • 在 Ubuntu 24.04 LTS 上安装 Jenkins 并配置全局工具(Git、JDK、Maven)
  • 余氯传感器在智慧水务系统中如何实现IoT集成
  • 数字证书_CA_详解
  • 超越传统:AAT Bioquest Calbryte探针的高信噪比与快速动力学特性解析
  • 实时数据仓库是什么?数据仓库设计怎么做?
  • 攻防世界-XCTF-Web安全最佳刷题路线
  • Hadolint:Dockerfile 语法检查与最佳实践验证的终极工具
  • JVM 类初始化和类加载 详解
  • 相机Camera日志分析之二十五:高通相机Camx 基于预览1帧的process_capture_request四级日志分析详解
  • STM32中自动生成Flash地址的方法
  • 昇腾+ds+dify部署
  • 基于SpringBoot和PostGIS的OSM时空路网数据入库实践
  • 服务器CPU被WMI Provider Host系统进程占用过高,导致系统偶尔卡顿的排查处理方案
  • Spring AI学习一
  • qt network 整体框架
  • 将图形可视化工具的 Python 脚本打包为 Windows 应用程序
  • 【安全攻防与漏洞】​​量子计算对HTTPS的威胁:后量子密码学进展
  • MyBatis-Plus LambdaQuery 高级用法:JSON 路径查询与条件拼接的全场景解析
  • Linux系统-基本指令(6)
  • Python 多线程编程全面学习指南
  • 优化技巧--滑动窗口
  • AI物体识别原理综述与Auto Drive实践