uni-app 订单状态页功能需求 实现点击顶部切换按钮切换到对应状态并显示对应状态信息
uni-app 订单状态页功能需求 实现点击顶部切换按钮切换到对应状态并显示对应状态信息
订单状态页,点击顶部切换按钮,可切换到对应状态,显示对应状态信息
1 回复
在uni-app中实现订单状态页的功能需求,可以通过使用Vue框架的组件和状态管理来完成。以下是一个简单的代码示例,展示了如何实现点击顶部切换按钮来切换到对应的订单状态,并显示对应状态的信息。
1. 创建页面结构
在pages
目录下创建一个新的页面,例如orderStatus.vue
。
<template>
<view class="container">
<view class="status-tabs">
<view
v-for="(status, index) in statusList"
:key="index"
:class="['tab-item', {active: currentIndex === index}]"
@click="changeStatus(index)">
{{ status.name }}
</view>
</view>
<view class="status-info">
<text>{{ currentStatus.info }}</text>
<!-- 这里可以添加更多状态信息展示 -->
</view>
</view>
</template>
2. 定义数据和方法
在<script>
标签中定义状态列表、当前状态索引、以及切换状态的方法。
<script>
export default {
data() {
return {
statusList: [
{ name: '待支付', info: '您的订单已创建,请尽快支付。' },
{ name: '已支付', info: '订单已支付,等待商家发货。' },
{ name: '已发货', info: '订单已发货,请注意查收。' },
{ name: '已完成', info: '订单已完成,感谢您的购物!' }
],
currentIndex: 0 // 默认显示第一个状态
};
},
computed: {
currentStatus() {
return this.statusList[this.currentIndex];
}
},
methods: {
changeStatus(index) {
this.currentIndex = index;
}
}
};
</script>
3. 添加样式
在<style>
标签中添加一些基本的样式,使界面更加美观。
<style scoped>
.container {
padding: 20px;
}
.status-tabs {
display: flex;
justify-content: space-around;
margin-bottom: 20px;
}
.tab-item {
padding: 10px 20px;
border-bottom: 2px solid transparent;
cursor: pointer;
}
.tab-item.active {
border-bottom-color: #1aad19;
color: #1aad19;
}
.status-info {
font-size: 16px;
color: #333;
}
</style>
总结
以上代码展示了一个简单的uni-app页面,其中包含顶部切换按钮和对应状态信息的显示。通过Vue的数据绑定和事件处理机制,实现了点击顶部按钮切换订单状态并显示对应信息的功能。你可以根据实际需求进一步扩展和优化这个示例,例如添加网络请求获取订单状态数据、处理异常情况等。