1 回复
在uni-app中实现类似快递详情页面的展示,你可以利用uni-app
提供的组件和API来实现。以下是一个简单的示例代码,展示了如何创建一个快递详情页面。
首先,假设你有一个快递详情的数据结构如下:
{
"orderNumber": "123456789",
"status": "运输中",
"items": [
{
"name": "商品A",
"quantity": 2,
"price": "¥100"
},
{
"name": "商品B",
"quantity": 1,
"price": "¥200"
}
],
"logistics": [
{
"time": "2023-10-01 10:00",
"location": "发货地",
"description": "已揽收"
},
{
"time": "2023-10-02 15:00",
"location": "中转站",
"description": "已到达XX中转站"
}
]
}
然后,你可以在pages
目录下创建一个新的页面,例如expressDetail.vue
,并在其中编写如下代码:
<template>
<view class="container">
<view class="order-info">
<text>订单号: {{orderData.orderNumber}}</text>
<text>状态: {{orderData.status}}</text>
</view>
<view class="items-list">
<view v-for="(item, index) in orderData.items" :key="index" class="item">
<text>商品: {{item.name}}</text>
<text>数量: {{item.quantity}}</text>
<text>价格: {{item.price}}</text>
</view>
</view>
<view class="logistics-list">
<view v-for="(log, index) in orderData.logistics" :key="index" class="logistic">
<text>{{log.time}}</text>
<text>{{log.location}}</text>
<text>{{log.description}}</text>
</view>
</view>
</view>
</template>
<script>
export default {
data() {
return {
orderData: {
// 这里填入实际的快递详情数据
orderNumber: '',
status: '',
items: [],
logistics: []
}
};
},
onLoad() {
// 模拟从服务器获取数据,实际开发中应使用uni.request等API获取数据
this.orderData = {
// 填入示例数据
};
}
};
</script>
<style>
/* 添加你的样式 */
</style>
在这个示例中,我们使用了v-for
指令来循环渲染商品列表和物流信息。onLoad
生命周期函数用于模拟从服务器获取数据,实际开发中应使用uni.request
等API来获取数据。
你可以根据实际需求调整页面布局和样式,以满足你的快递详情页面展示需求。