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);
      }
    }
相关推荐
wjjzhbb4 小时前
前端监控:给用户体验装上仪表盘
前端·ux
江湖有缘4 小时前
Docker实战 | Docker部署Minimalist-web-notepad个人笔记本
前端·docker·notepad++
Hilaku5 小时前
为什么我在团队里禁止使用 axios?
前端·javascript·程序员
兮动人5 小时前
Chrome 152 升级后本地请求全挂了?是 LNA 策略在搞事
前端·chrome·lna·local network
JarvanMo5 小时前
让 3D 在 Flutter 中焕发生机:Flutter GPU 与 flutter_scene 实战经验
前端
狂师6 小时前
太强了!GitHub上开源了一款AI自动化测试框架,0代码搞定前后端测试!
前端·后端·测试
只睡四小时6 小时前
Local-First 数据契约:一张表装下 4 类数据
前端·javascript·架构设计·local-first·数据契约
迅猛龙办公室6 小时前
Python函数实现反转一个只有3位数的整数
开发语言·前端·python
我星期八休息6 小时前
Redis 的原理和使用(2)
前端·数据库·redis·python·mysql·缓存·bootstrap
Java后端的Ai之路6 小时前
19-ReactJS最佳实践
前端·react.js·前端框架