element UI季度选择器的实现

效果展示

用elementUI的select实现季度选择器

代码实现

  1. generateQuarterOption放在methods中,需要近几年的只需要修改第一个循环的次数即可,mounted生命周期函数中调用generateQuarterOption()
javascript 复制代码
    generateQuarterOption() {
      //近3年所有季度
      let now = new Date()
      for (let i = 0; i < 3; i++) {
        let year = now.getFullYear() - i
        let quarter = Math.ceil((now.getMonth() + 1) / 3)
        for (let j = 4; j >= 1; j--) {
          //value为四个季度的时间起末,例如2019年1季度的时间起末为2019-01-01 00:00:00至2019-03-31 23:59:59
          let item = {
            label: year + '年-第' + j + '季度',
            value: [formatDate(new Date(year + '-' + (j * 3 - 2) + '-01 00:00:00')), formatDate(new Date(year + '-' + (j * 3) + '-'+(((j * 3)===6||(j * 3)===9)?30:31)+' 23:59:59'))]
          }
          this.quarterOption.push(item)
        }
      }

      console.log(this.quarterOption)
    },
  1. data中需要定义一个quarterOption
  2. 视图代码
javascript 复制代码
        <el-form-item v-if="timeCategory===1" label="季度选择">
          <el-select v-model="topChooseTime" key="quarterSelect">
            <el-option :value="item.value" :label="item.label" v-for="item in quarterOption"></el-option>
          </el-select>
        </el-form-item>
相关推荐
zgscwxd3 小时前
thinkphp6模板调用URL方法生成的链接异常
前端·javascript·html
y先森4 小时前
js实现导航栏鼠标移入时,下划线跟随鼠标滑动
开发语言·前端·javascript
京东菜鸟全球通快递小哥6 小时前
Axios取消重复请求,但能让最新请求作为最终返回,且能共享状态 ,不知小伙您有没有尝到真香~
前端·javascript·axios
EasyNTS6 小时前
H.265流媒体播放器EasyPlayer.js网页直播/点播播放器WebGL: CONTEXT_LOST_WEBGL错误引发的原因
javascript·webgl·h.265
兔兔爱学习兔兔爱学习7 小时前
leetcode219. Contains Duplicate II
javascript·数据结构·算法
林奇lc7 小时前
elementUI select,option变化,如果option不存在上次的选项,自动清空上次的选择
前端·vue.js·elementui
杨荧7 小时前
【开源免费】基于Vue和SpringBoot的实习管理系统(附论文)
java·前端·javascript·vue.js·spring boot·spring cloud·java-ee
软件小伟7 小时前
Element UI如何实现按需导入--Vue3篇
前端·javascript·ui·elementui·vue
swipe8 小时前
Typescript进阶之类型体操套路四
前端·javascript·typescript
JackieDYH9 小时前
element-plus如何修改内部样式而不影响vue其他组件的样式
前端·javascript·vue.js