uni-app 订单状态页功能需求 实现点击顶部切换按钮切换到对应状态并显示对应状态信息

发布于 1周前 作者 yibo5220 来自 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的数据绑定和事件处理机制,实现了点击顶部按钮切换订单状态并显示对应信息的功能。你可以根据实际需求进一步扩展和优化这个示例,例如添加网络请求获取订单状态数据、处理异常情况等。

回到顶部