首页 > 其他 > 详细

element ui 时间选择器pickeroption里面this的指向问题

时间:2020-09-15 12:45:28      阅读:218      评论:0      收藏:0      [点我收藏+]
pickerOptions: {
        disabledDate(time) {
          console.log(this) //undefined 拿不到vue实例
          console.log(_this.searchForm.timeValue)//可以拿到值
          console.log(_this) //vue实例
          const lastYearDate = new Date(getLastFormatYear(time)).getTime()
          //  console.log(lastYearDate,8888)
          return time.getTime() > new Date() || time.getTime() < lastYearDate
        }
      }
disabledDate里面拿不到vue实例本身的,因为data是一个函数,pickerOptions属于函数里的一个属性,有关this和作用域的问题,这里需要增加this的指向问题

解决方法一:可以在data里拿一下this:

data() {
    var _this = this
    return {
    .....
    }    

解决方法二:可以在computed写一个方法

computed: {
    pickerOptions() {
      // 用计算属性
      let _this = this
      // 此时 this指向的就是vue实例
      return {
        disabledDate(time) {
          console.log(_this)//这里可以拿到this了
          return time.getTime() > Date.now()
        }
      }
    }
  }

 

element ui 时间选择器pickeroption里面this的指向问题

原文:https://www.cnblogs.com/shj-com/p/13672044.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!