elementplus日期选择器中增加至今选项

日期组件的shortcuts快捷选项结合改变placeholder文字与样式实现

ini 复制代码
//         html


        <el-date-picker
          style="width: 240px"
          v-model="formUsed.nowDate"
          value-format="YYYY-MM-DD"
          :shortcuts="shortcuts"
          :class="formUsed.soFar ? 'time-now-picker' : ''"
          @change="changeDate"
          type="date"
          :placeholder="formUsed.soFar && item.showNow ? '至今' : '请选择日期'"
        />
        
        
 //        js
 
 
        let formUsed = ref({
            nowDate: new Date(),
            soFar: false // 是否选择至今选项
        })
        const shortcuts = [
          {
             text: '至今',
             value: () => {
             const date = new Date()
             // 改变formUsed.value.endDate会同时触发changeDate,所以这里等changeDate执行完在执行
             setTimeout(() => {
               formUsed.value.soFar = true
               formUsed.value.endDate = ''
             }, 0)
             return date
           }
         }
       ]
       
      let changeDate = () => {
        if (formUsed.value.soFar) {
          formUsed.value.soFar = false
        }
      }

//      css
    .time-now-picker {
      .el-input__icon {
        content: '至今';
      }
      .el-input__inner::placeholder {
        color: rgb(96, 98, 102);
      }
    }
相关推荐
cy玩具16 分钟前
点击评论详情,跳到评论页面,携带对象参数写法:
前端
qq_390161771 小时前
防抖函数--应用场景及示例
前端·javascript
John.liu_Test1 小时前
js下载excel示例demo
前端·javascript·excel
Yaml42 小时前
智能化健身房管理:Spring Boot与Vue的创新解决方案
前端·spring boot·后端·mysql·vue·健身房管理
PleaSure乐事2 小时前
【React.js】AntDesignPro左侧菜单栏栏目名称不显示的解决方案
前端·javascript·react.js·前端框架·webstorm·antdesignpro
哟哟耶耶2 小时前
js-将JavaScript对象或值转换为JSON字符串 JSON.stringify(this.SelectDataListCourse)
前端·javascript·json
getaxiosluo2 小时前
react jsx基本语法,脚手架,父子传参,refs等详解
前端·vue.js·react.js·前端框架·hook·jsx
理想不理想v2 小时前
vue种ref跟reactive的区别?
前端·javascript·vue.js·webpack·前端框架·node.js·ecmascript
知孤云出岫2 小时前
web 渗透学习指南——初学者防入狱篇
前端·网络安全·渗透·web
贩卖纯净水.2 小时前
Chrome调试工具(查看CSS属性)
前端·chrome