最新公告
  • 欢迎您光临起源地模板网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入钻石VIP
  • Calendar calendar控件的月份添加点击事件

    正文概述 掘金(请不要耽误我修仙)   2021-03-31   531

    写在前面

    添加事件

    • 在created的钩子函数中实现如下代码
    this.$nextTick(() => {
            // 点击上个月
            let prevBtn = document.querySelector('.el-calendar__button-group .el-button-group>button:nth-child(1)');
            prevBtn.addEventListener('click', () => {
              console.info(this.valueData)
             this.dateFormat('YYYY-mm-dd',this.valueData)
            })
            // 点击今天
            let currBtn = document.querySelector('.el-calendar__button-group .el-button-group>button:nth-child(2)');
            currBtn.addEventListener('click', () => {
             console.info(this.valueData)
             this.dateFormat('YYYY-mm-dd',this.valueData)
            })
            // 点击下个月
            let nextBtn = document.querySelector('.el-calendar__button-group .el-button-group>button:nth-child(3)');
            nextBtn.addEventListener('click', () => {
             console.info(this.valueData)
             this.dateFormat('YYYY-mm-dd',this.valueData)
            })
          })
    

    时间格式化代码

         /**
           * @param {Object} fmt 需要的时间格式 例如:'YYYY-mm-dd'
           * @param {Object} date  格林尼治时间 
           */
          dateFormat(fmt, date) {
            let ret;
            const opt = {
              "Y+": date.getFullYear().toString(), // 年
              "m+": (date.getMonth() + 1).toString(), // 月
              "d+": date.getDate().toString(), // 日
              "H+": date.getHours().toString(), // 时
              "M+": date.getMinutes().toString(), // 分
              "S+": date.getSeconds().toString() // 秒
            };
            for (let k in opt) {
              ret = new RegExp("(" + k + ")").exec(fmt);
              if (ret) {
                fmt = fmt.replace(ret[1], (ret[1].length == 1) ? (opt[k]) : (opt[k].padStart(ret[1].length, "0")))
              };
            };
            return fmt;
          },
    
    打印结果Calendar calendar控件的月份添加点击事件

    注意的点

    <el-calendar v-model='valueData' v-loading="loading" style="margin-top: 10px">
              <template slot="dateCell" slot-scope="{date, data}">
                <div class="currCalendarSty" @dblclick="calendarOnClick(data,date)">
                  <p :class="data.isSelected ? 'is-selected' : ''">
                    {{ data.day.split('-').slice(1).join('-') }} {{ data.isSelected ? '✔️' : ''}}
                  </p>
                  <el-row :gutter="20">
                    <el-col :span="12" v-for="item in schdules[data.day]" :key="item.id" class="text item">
                      <div style="display: flex;flex-direction: column;justify-items: center;align-items: flex-start">
                        <div style="font-weight: bold">{{item.shifts !==null ? item.shifts.name : '未设置班次'}}</div>
                        <div>{{item.useralias}}
                          <el-tag v-if="item.user_status && item.user_status!==' '" size="mini" type="success">{{item.user_status}}</el-tag>
                        </div>
                      </div>
                    </el-col>
                  </el-row>
                </div>
            </template>
     </el-calendar>
    

    结束


    起源地下载网 » Calendar calendar控件的月份添加点击事件

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    模板不会安装或需要功能定制以及二次开发?
    请QQ联系我们

    发表评论

    还没有评论,快来抢沙发吧!

    如需帝国cms功能定制以及二次开发请联系我们

    联系作者

    请选择支付方式

    ×
    迅虎支付宝
    迅虎微信
    支付宝当面付
    余额支付
    ×
    微信扫码支付 0 元