elementUI日期选择器

问题描述

我回填一条数据(红色框起来)中的日期(绿色框起来的),回填到设置邀请码的有效期中点击第一条数据可以但是点击第二条数据就回填不上去了,但是对应的数据可以打印出来

问题出现的环境背景及自己尝试过哪些方法

clipboard.png

相关代码

// 请把代码文本粘贴到下方(请勿用图片代替代码)

 <el-button v-if="powerSet" :disabled="new Date(scope.row.validPeriod).getTime() < new Date().getTime()"  class="btn-info" @click="examineSet(scope)" type="primary" size="mini">设置</el-button>

 //设置按钮点击
        examineSet(scope) {
            console.log('new Date(scope.row.startTime)',new Date(scope.row.startTime));
            this.showDetailSet = true;
            this.setInviteNum = scope.row.serialCode;
            this.setInviteId = scope.row.id;
            this.invitePeopleSet = scope.row.invitationsNumber;
            //validitySet有效期绑定的变量
            this.validitySet[0] = new Date(scope.row.startTime);
            this.validitySet[1] = new Date(scope.row.validPeriod);
            console.log('设置设置',this.validitySet);
        },

你期待的结果是什么?实际看到的错误信息又是什么?

第二次回填的时候,是正常的数据

阅读 2.5k
2 个回答

在template中的设置按钮绑定一个点击事件@click="examineSet(scope.row)"
在methods中写你这个绑定的事件examineSet(row){},row可以获取当前element表格中那一行的数据,你所需要的时间可以在那row里拿到,你console.log(row),你就明白了,再把你获取的时间转换一下你所需要的格式,在传给弹出框里双向绑定过的参数

给你一个解决方案,在data里面放一组数据,比如叫dialogData,里面用来存储dialog对话框数据的。

data(){
  return {
    dialogData : {
      name : '', // 邀请人姓名
      code : '', // 邀请码
      maxNum : 0,  // 最大邀请人数
      dayTime : null, // 日期
    }
  }
}

再给表格添加点击事件,获取到row的值之后,将this.dialogData对象里面的值赋值一遍,就ok了。这样就会每次都变了。如果你还不放心。那就在dialog上加一个v-if,v-if的值与dialog显示关闭的值一样就可以了。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题