element-ui日期组件DatePicker设置日期选择范围Picker Options

element-UI提供了DatePicker日期选择器组件,可以让我们很方便的获取到日期,默认的选择是全部的日期都可以选择的,但是很多场景中我们要对日期选择范围做限定,比如出行日期就不能选过去的日期,订票时间要限制日期范围

官网提供了picker-options参数可以设置日期选择范围,具体操作看代码

// 页面引入组件, 加上picker-options这个参数
  <el-date-picker
    v-model="exCheckDate"
    type="date"
    :picker-options="pickerOptions"
    value-format="yyyy-MM-dd"
    placeholder="Please select">
  </el-date-picker>

  // js中定义范围
  // picker-options的值是一个对象,他的disabledDate属性可以设置禁用日期,有一个参数是当前选择的日期
  data () {
    return {
      pickerOptions: {}, // 日期设置对象
    }
  },

  created {   // disabledDate 为true表示不可选,false表示可选
   this.pickerOptions.disabledDate = disabledDate (time) {
      // 设置可选择的日期为今天之后的一个月内
      let curDate = (new Date()).getTime()
      // 这里算出一个月的毫秒数,这里使用30的平均值,实际中应根据具体的每个月有多少天计算
      let day = 30 * 24 * 3600 * 1000
      let dateRegion = curDate + day
      return time.getTime() < Date.now() - 8.64e7 || time.getTime() > dateRegion

      // 设置选择的日期小于当前的日期,小于返回true,日期不可选
      // return time.getTime() < Date.now() - 8.64e7
    },
  }

看一下应用的效果, 可选范围一个月,8是当前日期

  

可选范围今天及之后的日期

  

如果你们需要其他效果可以自行设置

原文地址:https://www.cnblogs.com/steamed-twisted-roll/p/9755651.html

时间: 2024-07-31 22:19:38

element-ui日期组件DatePicker设置日期选择范围Picker Options的相关文章

element-ui日期组件DatePicker选择日期范围赋值编辑问题

最近在项目中使用element-UI的日期范围组件时遇到一个问题,相信很多人也做过这种场景,一个录入页面也同时是编辑页面,编辑的时候就需要先赋值.但是我给date组件赋值后,确无法操作了,change事件也触发不了,但是对应的值已经改变了,只是页面没改变,这真的是很神奇的bug.通过图片看下我遇到的问题 试了多次之后,发现是赋值的问题,date组件有一个displayValue属性,与页面展示的数据一致,一开始我想直接重置displayValue的值,但是发现displayValue是一个只读属

element-ui日期选择器datepicker限制最大选择日期范围

如图,需求为最多选择范围为七天 <el-date-picker v-model="pickerDate" type="daterange" :picker-options="pickerOptions" @change="handlePickerDate" range-separator="至" format="yyyy-MM-dd" value-format="time

html页面日期组件datepicker的使用

Element UI分页组件prev-text和mext-text属性无效?

前情提要 /(ㄒoㄒ)/~~ 作为刚刚接触 Element 组件的人来说,看文档是第一步,但是当我想要修改分页组件里面的按钮时却遇到了问题. 文档中写到是需要给 prev-text 和 next-text 属性就可以将下图中划红线的小箭头修改成想要的文字,比如“上一页”和“下一页”. 于是我试了两种方式去使用这两个属性,都没有成功,分页组件“一动不动”,简直就是黑人问号脸! //第一种方法无效 <div class="block"> <el-pagination la

element ui table组件自定义合计栏,后台给的数据

合计的数据是后台传的,所以用table组件自定义一行用来合计 <el-table border fit v-loading.body="listLoading" element-loading-text="拼命加载中" :data="getChannelData" style="width: 100%" :default-sort = "{prop: 'date', order: 'descending'}&q

vue+element ui table组件封装,使用render渲染

后台管理经常会用到表格,一开始封装了一个常用的功能性表格,点击这里: 后来由于需求增加,在表格中还会用到switch,select,input等多种组件,每次都要在html中增加<el-table-column></el-table-column>, 维护起来相当麻烦,就想到了使用render渲染. 组件内部封装代码: <template> <el-table :data="tableData" size="medium"

element ui的表格列设置fixed后做动态表格出现表格错乱

最近使用element-UI时,使用table做动态表格,当操作列使用fixed时,动态切换表格列设置设置时就会出现错乱,情况如下: 解决方法: 把el-table-column上的key设成一个随机数Math.random(),每次表头设置完都要更新一下就正常,如下 这样,显示结果就正常了 原文地址:https://www.cnblogs.com/lwming/p/12074579.html

关于Element UI tree组件 懒加载的更新操作

近期根据需求,要做一个懒加载的组织树,并且可以编辑组织树.但是编辑了之后无法进行实时更新. 一开始想到了很多解决方案,也在网上参考了很多方案,但是都又种种不足. 所以我去看了elementUI的tree组件的懒加载方法的源代码 Node.prototype.loadData = function loadData(callback) { var _this5 = this; var defaultProps = arguments.length > 1 && arguments[1]

在使用element ui时 select组件获取label问题

最近在工作的时候需要实现多个条件联合查询,这个其实就是一条sql语句.但是,我们数据库中存储的是根据前端传来id的值所对应的值,而不是直接存的id,使用select组件时,却只能取到value值,无法作为后台查询的条件. 我们需要的是select 组件的label值,而不是看不见的value值. 首先,根据element ui select组件使用手册,给组件添加'change'方法 1 @change=changeValue 再根据Array 的 find方法找出对应的值即可. 1 chang