el-date-picker踩坑记录

修改日期下拉选项样式

最近做了一个项目,有个插件层级太高,所以不得以把日期下拉框样式改了,

1. 添加popper-class="my-date-class"属性

<el-date-picker
    v-model="dateRange"
    popper-class="date-range-class"
    placeholder="开始时间"
    type="daterange"
    start-placeholder="开始日期"
    end-placeholder="结束日期"
/>

2. 在style中要把scoped去掉,否则样式不起作用,如果还不行,加!important,再不行,加::v-deep(scss中)或 /deep/ (sass中)

.my-date-class{
    left: 23px !important;
    width: 450px !important;
    ::v-deep .el-range-separator{
        height: 36%;
    }
    ...
}

设置默认时间

需求是需要选择开始时间的00:00:00和结束时间的23:59:59

1. 在computed中计算

computed: {
    timeDefault() {
      const dateObj = new Date()
      const curDate = dateObj.getFullYear() + '-' + ((dateObj.getMonth() + 1) >= 10 ? (dateObj.getMonth() + 1) : '0' + (dateObj.getMonth() + 1)) + '-' + (dateObj.getDate() >= 10 ? dateObj.getDate() : '0' + dateObj.getDate())
      const begDate = curDate + ' 00:00:00'
      const endDate = curDate + ' 23:59:59'
      return [begDate, endDate]
    }
  },

2. mounted赋值

mounted() {
    this.dateRange = this.timeDefault
  },

3. 添加属性default-time

<el-date-picker
   v-model="dateRange"
    popper-class="my-date-class"
    placeholder="开始时间"
    type="daterange"
    start-placeholder="开始日期"
    end-placeholder="结束日期"
    :default-time="['00:00:00', '23:59:59']"
    value-format="yyyy-MM-dd HH:mm:ss"
/>

设置组件不能清空

绑定clearable属性为false

<el-date-picker
  v-model="dateRange"
  placeholder="开始时间"
  type="daterange"
  start-placeholder="开始日期"
  end-placeholder="结束日期"
 :clearable="false"
/>

控制选择时间

1. 添加属性picker-options

<el-date-picker
  v-model="dateRange"
  placeholder="开始时间"
  type="daterange"
  start-placeholder="开始日期"
  end-placeholder="结束日期"
  :default-time="['00:00:00', '23:59:59']"
  value-format="yyyy-MM-dd HH:mm:ss"
  :clearable="false"
  :picker-options="pickerTime"
/>

2. 在Data里面加属性

data(){
    return {
        pickerTime: {
        disabledDate: time => {
          // 之前的时间返回false不能选
          return time.getTime() >= new Date().getTime()
        }
      }
    }
}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
el-date-pickerElement UI库中的日期选择器组件,picker-options是该组件的配置选项。 使用picker-options可以对日期选择器进行个性化的设置,包括但不限于以下选项: 1. disabledDate:自定义禁用日期的函数,可以根据具体需求设置某些日期不可选。 2. shortcuts:预设快捷选项,可以快速选择常用的日期范围。 3. format:指定日期的显示格式,默认为yyyy-MM-dd。 4. clearable:是否显示清空按钮,默认为true。 5. readonly:是否为只读状态,默认为false。 6. editable:是否可输入,默认为true。 7. align:对齐方式,可选值为left、center、right,默认为left。 8. popperClass:自定义弹出框样式的类名。 9. pickerOptions:配置日期选择器弹出框的选项,例如禁用时间、时间间隔等。 示例代码如下: ```html <el-date-picker v-model="date" :picker-options="{ disabledDate: (time) => { return time.getTime() < Date.now(); // 禁用过去的日期 }, shortcuts: [ { text: '最近一周', onClick: () => { const start = new Date(); const end = new Date(); start.setDate(start.getDate() - 6); this.date = [start, end]; } }, { text: '最近一个月', onClick: () => { const start = new Date(); const end = new Date(); start.setMonth(start.getMonth() - 1); this.date = [start, end]; } } ], format: 'yyyy-MM-dd', clearable: true, readonly: false, editable: true, align: 'left', popperClass: 'my-popper-class', pickerOptions: { disabledMinutes: [0, 30] // 禁用0分和30分 } }" ></el-date-picker> ``` 以上是一些常见的picker-options选项,你可以根据自己的需求进行配置。更多详细的选项和用法,请参考Element UI官方文档。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值