van-datetime-picker循环 每个item添加时间

<div>
  <div v-for="(item,index) in 3" :key="index">
     <strong><span class="span"></span>宝宝信息{{index+1}}</strong>
     <van-field
       readonly
       clickable
       name="datetimePicker"
       :value="item.birthday ? formatDate(item.birthday, 'YY/MM/DD/') : item.birthday"
       label="宝宝生日"
       placeholder="选择宝宝生日"
       @click="item.showBabyBri = true"
     />
     <van-popup v-model="item.showBabyBri" position="bottom">
       <van-datetime-picker
         type="date"
         v-model="item.currentDate"
         title="选择宝宝生日"
         :min-date="minDate"
         @confirm="onBabyConfirmTime(item)"
         @cancel="item.showBabyBri = false"
       />
     </van-popup>
   </div>
 </div>
data() {
 return {
   showPicker: false,
   minDate: new Date(2017, 0, 1),
   list: [
     {
       index: 0,
       birthday: '', // 宝宝生日
       showBabyBri: false,
     }
   ]
 }
},
methods: {
onBabyConfirmTime(item) {
  item.birthday = this.formatDate(item.currentDate, 'YY/MM/DD/');
  item.showBabyBri = false;
},
// 格式化时间
formatDate(time,format='YY-MM-DD hh:mm:ss'){
   var date = new Date(time);
   var year = date.getFullYear(),
     month = date.getMonth()+1,//月份是从0开始的
     day = date.getDate(),
     hour = date.getHours(),
     min = date.getMinutes(),
     sec = date.getSeconds();
   var preArr = Array.apply(null,Array(10)).map(function(elem, index) {
     return '0'+index;
   });开个长度为10的数组 格式为 00 01 02 03

   var newTime = format.replace(/YY/g,year)
             .replace(/MM/g,preArr[month]||month)
             .replace(/DD/g,preArr[day]||day)
             .replace(/hh/g,preArr[hour]||hour)
             .replace(/mm/g,preArr[min]||min)
             .replace(/ss/g,preArr[sec]||sec);

   return newTime;
 },
}
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值