iis服务器助手广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >vue uniapp实现分段器效果
  • 339
分享到

vue uniapp实现分段器效果

2024-04-02 19:04:59 339人浏览 安东尼
摘要

本文实例为大家分享了Vue uniapp实现分段器效果的具体代码,供大家参考,具体内容如下 此举只是记录下用vue动态改变样式效果 先展示下效果 template部分 <

本文实例为大家分享了Vue uniapp实现分段器效果的具体代码,供大家参考,具体内容如下

此举只是记录下用vue动态改变样式效果

先展示下效果

template部分


<view class="countTime">
 <text class="title">折扣和就餐时间</text>
 <view class="wrap">
  <view class="box" v-for="(item,index) in discountList" :key="index" @click="toggleItem(index)">
   <view class="selBox" :style="[itemStyle(index)]">
    <view class="countBox">
     <text class="count">{{item.count}}</text>
     <text>折</text>
       </view>
    <text class="time">{{item.time}}</text>
   </view> 
   <text class="countPrice" :style="[priceStyle(index)]">折后人均¥100</text>
  </view>
 </view>
</view>

script部分

这部分关键的是computed下的代码


export default {
  data() {
   return {
    themColor:this.Enum.Them.base,
    discountList:[{
     "count":6.9,
     "time":"12:00~13:00"
    },{
     "count":6.7,
     "time":"14:00~16:00"
    },{
     "count":6.5,
     "time":"20:00~22:00"
    }],
    currentIndex:0
   }
  },
  computed:{
   itemStyle(){
    return index => {
     let style = {}
     if(index === this.currentIndex){
      style.backgroundColor = this.themColor;
      style.border = `1px solid ${this.themColor}`;
      style.color = '#fff';
     }
     //当选中第二个时 第一个右边框和第三个左边框置为none
     if(this.currentIndex === 1){
      if(index === this.currentIndex - 1){
       style.borderRight = 'none !important'
      }
      if(index === this.currentIndex + 1){
       style.borderLeft = 'none !important'
      }
     }
     return style
    }
   },
   priceStyle(){
    return index => {
     let style = {}
     if(index === this.currentIndex){
      style.color = this.themColor
     }
     return style
    }
   }
  },
  methods: {
   toggleItem(idx){
    this.currentIndex = idx
   }
  }
 }

css样式

这里使用的sCSS,具体的用法这里不再赘述啦


.countTime{
  display: flex;
  flex-direction: column;
  .title{
   font-size: $uni-font-size-bl;
   margin: 20rpx 0;
  }
  .wrap{
   display: flex;
   .box{
    @include flex(column,center,center);
    width: 33%;
    &:nth-child(2){
     & > .selBox{
      border-left: none;
      border-right: none;
     }
    }
    .selBox{
     @include flex(column,center,center);
     width: 100%;
     height: 150rpx;
     border: 1px solid $uni-border-color;
     .countBox{
      font-size: $uni-font-size-lg;
      font-weight: bolder;
      margin-bottom: 10rpx;
      .count{
       font-size: $uni-font-size-bl;
      }
     }
     .time{
      font-size: $uni-font-size-l;
     }
    }
    .countPrice{
     margin-top: 10rpx;
     font-size: $uni-font-size-l;
    }
   }
  }
 }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程网。

--结束END--

本文标题: vue uniapp实现分段器效果

本文链接: https://www.lsjlt.com/news/154366.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • vue uniapp实现分段器效果
    本文实例为大家分享了vue uniapp实现分段器效果的具体代码,供大家参考,具体内容如下 此举只是记录下用vue动态改变样式效果 先展示下效果 template部分 <...
    99+
    2024-04-02
  • uniapp实现滑动评分效果
    本文实例为大家分享了uniapp实现滑动评分的具体代码,供大家参考,具体内容如下 uniapp开发、 滑动评分、点击评分 <template> <view&g...
    99+
    2024-04-02
  • vue+elementUI实现分页效果
    本文实例为大家分享了vue+elementUI实现分页效果的具体代码,供大家参考,具体内容如下 页面中渲染的数据不是所有数据,是需要展示的数据,即当前页的数据,默认第一页的数据,这里...
    99+
    2024-04-02
  • vue+Element实现分页效果
    本文实例为大家分享了vue+Element实现分页效果的具体代码,供大家参考,具体内容如下 一般样式都是card里面包含列表和分页 这里就直接上代码了 <el-card&g...
    99+
    2024-04-02
  • vue项目实现分页效果
    vue项目中实现分页效果,供大家参考,具体内容如下 1.这里我们使用element-ui来实现,先使用npm安装 npm i element-ui -S 2.在main.js中...
    99+
    2024-04-02
  • vue实现分割验证码效果
    本文实例为大家分享了vue实现分割验证码效果的具体代码,供大家参考,具体内容如下 注:该代码存在问题,因为我maxlength =4 ,input 的宽度跟屏幕同宽,所以当我inpu...
    99+
    2024-04-02
  • Vue动态如何实现评分效果
    小编给大家分享一下Vue动态如何实现评分效果,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!具体内容如下1.图片分为三种on:ha...
    99+
    2024-04-02
  • vue实现百分比占比条效果
    本文实例为大家分享了vue实现百分比占比条的具体代码,供大家参考,具体内容如下 效果图 1.各自占比 /p> 2.左百分百 3.右百分百 代码实现 <templa...
    99+
    2024-04-02
  • Vue实现星空效果
    本文实例为大家分享了Vue实现星空效果的具体代码,供大家参考,具体内容如下 需要实现上图的星空效果 1.星空背景子组件 <template>   <div cla...
    99+
    2024-04-02
  • vue怎么实现分割验证码效果
    本篇内容主要讲解“vue怎么实现分割验证码效果”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“vue怎么实现分割验证码效果”吧!注:该代码存在问题,因为我maxlength =4 ,input 的...
    99+
    2023-06-29
  • 利用Vue模拟实现element-ui的分页器效果
    目录1. 思路1.1客户端1.2服务器2.服务器2.1创建数据2.2创建接口3.客户端3.1创建静态页面3.2请求数据3.3解析逻辑4.总结1. 思路 1.1客户端 利用vue相关的...
    99+
    2022-11-13
    Vue element-ui分页器 Vue element-ui分页 Vue element-ui
  • Android实现三段式滑动效果
    目录高德的效果:高德的效果: 实现的效果: 我们实现的效果和高德差距不是很大,也很顺滑。具体实现其实就是集成CoordinatorLayout.Behavior publi...
    99+
    2024-04-02
  • vue实现悬浮球效果
    本文实例为大家分享了vue实现悬浮球效果的具体代码,供大家参考,具体内容如下 小球效果 小球移动效果图源码 <template>   <transition>...
    99+
    2024-04-02
  • Vue实现时间轴效果
    本文实例为大家分享了Vue实现时间轴效果的具体代码,供大家参考,具体内容如下 时间轴上的时间点数和描述文本均可自定义设置 效果图如下: ①创建时间轴组件Timeline.vue: ...
    99+
    2024-04-02
  • vue实现手风琴效果
    本文实例为大家分享了vue实现手风琴效果的具体代码,供大家参考,具体内容如下 利用鼠标移入移出事件实现内容出现隐藏 用到的知识点: 1.@mouseover 鼠标移入事件 2.@mo...
    99+
    2024-04-02
  • Vue实现步骤条效果
    本文实例为大家分享了Vue实现步骤条效果的具体代码,供大家参考,具体内容如下 步骤总数和初始选择步骤 均可自定义设置,每个步骤title和description也均可自定义设置传入 ...
    99+
    2024-04-02
  • React实现分页效果
    本文实例为大家分享了React实现分页效果的具体代码,供大家参考,具体内容如下 首先确保已经安装了antd,axios jsx文件: import React, { useSt...
    99+
    2024-04-02
  • Vue使用Element-UI实现分页效果全过程
    目录前言技术选项:Pagination增加分页代码初始化数据回调函数指定table分页查看效果总结前言 分页在展示数据列表的场景肯定是非常多的。 一般的项目开发中,数据量特别大,一般...
    99+
    2023-05-18
    element-ui实现分页 elementui分页查询 elementui 分页
  • Vue怎么实现星空效果
    本篇内容主要讲解“Vue怎么实现星空效果”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Vue怎么实现星空效果”吧!星空效果如下1.星空背景子组件<template> &nb...
    99+
    2023-06-29
  • vue实现拖拽排序效果
    本文实例为大家分享了vue实现拖拽排序效果的具体代码,供大家参考,具体内容如下 效果预览 组件 drag.vue <template>   <Transition...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作