【愚公系列】2022年11月 微信小程序-优购电商项目-订单列表页面

本文主要是介绍【愚公系列】2022年11月 微信小程序-优购电商项目-订单列表页面,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 前言
  • 一、订单列表页面
    • 1. 业务逻辑
    • 2.涉及的接口数据
    • 3. 关键技术
  • 二、订单列表页面代码
    • 1.页面代码
    • 2.效果


前言

订单列表页面对于用户来说具备以下两个方面的作用:

1.交易凭证:售后、维权、发票都有据可循;针对买卖双方的争议,提供一条依据。

2.状态跟踪:交易链条较长的订单有跟踪订单状态的需求,譬如通过淘宝购买一件产品,长时间未收到货物,用户希望能看到订单及物流状态。如,待下单、待支付、运输中(相关物流信息查询)待收货、待评价等等。

一、订单列表页面

1. 业务逻辑

  1. 根据不同的的状态去加载不同的订单数据
  2. 点击标题紧挨着对应数据

2.涉及的接口数据

  1. 查询订单数据

3. 关键技术

  • ⼩程序 ⾃定义组件的 传参 ⽗向⼦动态传参 this.selectComponent(“#tabs”);
  • 时间戳 格式化处理

二、订单列表页面代码

1.页面代码

<Tabs tabs="{{tabs}}" bindtabsItemChange="handleTabsItemChange" ><view class="order_main"><view wx:for="{{orders}}"wx:key="order_id"class="order_item"><view class="order_no_row"><view class="order_no_text">订单编号</view><view class="order_no_value">{{item.order_number}}</view></view><view class="order_price_row"><view class="order_price_text">订单价格</view><view class="order_price_value">{{item.order_price}}</view></view><view class="order_time_row"><view class="order_time_text">订单日期</view><view class="order_time_value">{{item.create_time_cn}}</view></view></view></view>
</Tabs>
import { request } from "../../request/index.js";Page({/*** 页面的初始数据*/data: {orders: [],tabs: [{id: 0,value: "全部",isActive: true},{id: 1,value: "待付款",isActive: false},{id: 2,value: "待发货",isActive: false},{id: 3,value: "退款/退货",isActive: false}]},onShow(options) {const token = wx.getStorageSync("token");if (!token) {wx.navigateTo({url: '/pages/auth/index'});return;}// 1 获取当前的小程序的页面栈-数组 长度最大是10页面 let pages = getCurrentPages();// 2 数组中 索引最大的页面就是当前页面let currentPage = pages[pages.length - 1];// 3 获取url上的type参数const { type } = currentPage.options;// 4 激活选中页面标题 当 type=1 index=0 this.changeTitleByIndex(type-1);this.getOrders(type);},// 获取订单列表的方法async getOrders(type) {const res = await request({ url: "/my/orders/all", data: { type } });this.setData({orders: res.orders.map(v=>({...v,create_time_cn:(new Date(v.create_time*1000).toLocaleString())}))})},// 根据标题索引来激活选中 标题数组changeTitleByIndex(index) {// 2 修改源数组let { tabs } = this.data;tabs.forEach((v, i) => i === index ? v.isActive = true : v.isActive = false);// 3 赋值到data中this.setData({tabs})},handleTabsItemChange(e) {// 1 获取被点击的标题索引const { index } = e.detail;this.changeTitleByIndex(index);// 2 重新发送请求 type=1 index=0this.getOrders(index+1);}
})
.order_main .order_item {padding: 20rpx;border-bottom: 1rpx solid #ccc;color: #666;
}
.order_main .order_item .order_no_row {display: flex;padding: 10rpx 0;justify-content: space-between;
}
.order_main .order_item .order_price_row {display: flex;padding: 10rpx 0;justify-content: space-between;
}
.order_main .order_item .order_price_row .order_price_value {color: var(--themeColor);font-size: 32rpx;
}
.order_main .order_item .order_time_row {display: flex;padding: 10rpx 0;justify-content: space-between;
}

2.效果

在这里插入图片描述

这篇关于【愚公系列】2022年11月 微信小程序-优购电商项目-订单列表页面的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/368700

相关文章

微信公众号脚本-获取热搜自动新建草稿并发布文章

《微信公众号脚本-获取热搜自动新建草稿并发布文章》本来想写一个自动化发布微信公众号的小绿书的脚本,但是微信公众号官网没有小绿书的接口,那就写一个获取热搜微信普通文章的脚本吧,:本文主要介绍微信公众... 目录介绍思路前期准备环境要求获取接口token获取热搜获取热搜数据下载热搜图片给图片加上标题文字上传图片

一文教你如何将maven项目转成web项目

《一文教你如何将maven项目转成web项目》在软件开发过程中,有时我们需要将一个普通的Maven项目转换为Web项目,以便能够部署到Web容器中运行,本文将详细介绍如何通过简单的步骤完成这一转换过程... 目录准备工作步骤一:修改​​pom.XML​​1.1 添加​​packaging​​标签1.2 添加

tomcat多实例部署的项目实践

《tomcat多实例部署的项目实践》Tomcat多实例是指在一台设备上运行多个Tomcat服务,这些Tomcat相互独立,本文主要介绍了tomcat多实例部署的项目实践,具有一定的参考价值,感兴趣的可... 目录1.创建项目目录,测试文China编程件2js.创建实例的安装目录3.准备实例的配置文件4.编辑实例的

springboot集成Deepseek4j的项目实践

《springboot集成Deepseek4j的项目实践》本文主要介绍了springboot集成Deepseek4j的项目实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价... 目录Deepseek4j快速开始Maven 依js赖基础配置基础使用示例1. 流式返回示例2. 进阶

SpringBoot项目启动报错"找不到或无法加载主类"的解决方法

《SpringBoot项目启动报错找不到或无法加载主类的解决方法》在使用IntelliJIDEA开发基于SpringBoot框架的Java程序时,可能会出现找不到或无法加载主类com.example.... 目录一、问题描述二、排查过程三、解决方案一、问题描述在使用 IntelliJ IDEA 开发基于

SpringBoot项目使用MDC给日志增加唯一标识的实现步骤

《SpringBoot项目使用MDC给日志增加唯一标识的实现步骤》本文介绍了如何在SpringBoot项目中使用MDC(MappedDiagnosticContext)为日志增加唯一标识,以便于日... 目录【Java】SpringBoot项目使用MDC给日志增加唯一标识,方便日志追踪1.日志效果2.实现步

Python中DataFrame转列表的最全指南

《Python中DataFrame转列表的最全指南》在Python数据分析中,Pandas的DataFrame是最常用的数据结构之一,本文将为你详解5种主流DataFrame转换为列表的方法,大家可以... 目录引言一、基础转换方法解析1. tolist()直接转换法2. values.tolist()矩阵

Android App安装列表获取方法(实践方案)

《AndroidApp安装列表获取方法(实践方案)》文章介绍了Android11及以上版本获取应用列表的方案调整,包括权限配置、白名单配置和action配置三种方式,并提供了相应的Java和Kotl... 目录前言实现方案         方案概述一、 androidManifest 三种配置方式

python展开嵌套列表的多种方法

《python展开嵌套列表的多种方法》本文主要介绍了python展开嵌套列表的多种方法,包括for循环、列表推导式和sum函数三种方法,具有一定的参考价值,感兴趣的可以了解一下... 目录一、嵌套列表格式二、嵌套列表展开方法(一)for循环(1)for循环+append()(2)for循环+pyPhWiFd

Python容器类型之列表/字典/元组/集合方式

《Python容器类型之列表/字典/元组/集合方式》:本文主要介绍Python容器类型之列表/字典/元组/集合方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1. 列表(List) - 有序可变序列1.1 基本特性1.2 核心操作1.3 应用场景2. 字典(D