vue el-date-picker 日期选择器禁用失效问题

value-format="yyyy-MM-dd"的格式不要改为"yyyyMMdd",否则会导致日期选择器禁用失效问题,因为该组件默认的格式就是yyyy-MM-dd。

html 复制代码
<el-col v-for="(item, index) in formData" :key="index" >
   <el-date-picker
     v-else-if="item.type === 'datePicker'"
     v-model="form[item.prop]"
     :placeholder="item.placeholder"
     :picker-options="item.pickerOptions"
     type="date"
     value-format="yyyy-MM-dd"
     clearable
   />
</el-col>

在表单渲染时会调用this.beginDate()this.endDate()

js 复制代码
data() {
    return {
      formData: [ 
        {
          type: 'datePicker',
          placeholder: '起始日期',
          prop: 'startDate',
          pickerOptions: this.beginDate()
        },
        {
          type: 'datePicker',
          placeholder: '截止日期',
          prop: 'endDate',
          pickerOptions: this.endDate()
        }
      ]
   }
}
js 复制代码
methods: {
    beginDate() {
      const self = this;
      return {
        // 组件的方法,禁用返回的日期
        disabledDate(time) {
          if (self.form.endDate) {
            // 禁用大于结束日期的日期
            return time.getTime() > new Date(self.form.endDate).getTime();
          } 
        }
      };
    },
    endDate() {
      const self = this;
      return {
        disabledDate(time) {
          if (self.form.startDate) {
           // 禁用小于开始日期的日期
            return time.getTime() < new Date(self.form.startDate).getTime();
          } 
        }
      };
    }
 }
相关推荐
We་ct13 小时前
LeetCode 125. 验证回文串:双指针解法全解析与优化
前端·算法·leetcode·typescript
帅得不敢出门13 小时前
Android Framework在mk中新增类似PRODUCT_MODEL的变量并传递给buildinfo.sh及prop属性中
android·linux·前端
她超甜i13 小时前
css省略号展示,兼容性强,js判断几行,不需要定位
javascript·css·vue.js
小码吃趴菜14 小时前
【无标题】
前端·chrome
毕设源码-朱学姐15 小时前
【开题答辩全过程】以 基于HTML5的购物网站的设计与实现为例,包含答辩的问题和答案
前端·html·html5
梦65015 小时前
CSS 元素垂直水平居中的 8 种方法
前端·css
We་ct15 小时前
LeetCode 68. 文本左右对齐:贪心算法的两种实现与深度解析
前端·算法·leetcode·typescript
ShoreKiten15 小时前
ctfshow-web316
运维·服务器·前端
前端 贾公子15 小时前
release-it 使用指南
前端·javascript
全栈技术负责人16 小时前
前端团队 AI Core Workflow:从心法到落地
前端·人工智能·状态模式