template 模板中:
<p>服务时间可通过续约延长</p>
<div class="time_box">
<div class="time">
<label for="starTime">开始时间</label>
<select name="selectTime" id="starTime" required>
<option :value="options.tomorrow">明天</option>
<option :value="options.thedayaftertomorrow">后天</option>
<option :value="options.threedaysfromnow">{{options.threedaysfromnow}}</option>
</select>
</div>
<div class="time">
<label for="endTime">结束时间</label>
<input id="endTime" type="text" readonly :value="options.dayslater30">
</div>
</div>
mounted 钩子函数中:
import Func from '../../utils/publicMethods.js'
// 获取指定日期
this.options.tomorrow = Func.getDateStr(1);
this.options.thedayaftertomorrow = Func.getDateStr(2);
this.options.threedaysfromnow = Func.getDateStr(3);
this.options.dayslater30 = Func.getDateStr(31);
var starTime = document.getElementById('starTime');
var that = this;
starTime.addEventListener('change', function () {
switch (starTime.value) {
case that.options.tomorrow:
that.options.dayslater30 = Func.getDateStr(31)
break;
case that.options.thedayaftertomorrow:
that.options.dayslater30 = Func.getDateStr(32)
break;
case that.options.threedaysfromnow:
that.options.dayslater30 = Func.getDateStr(33)
break;
default:
break;
}
})
公共方法在这里:
// 获取某个日期
export function getDateStr(AddDayCount) {
var dd = new Date();
dd.setDate(dd.getDate() + AddDayCount); //获取AddDayCount天后的日期
var y = dd.getFullYear();
var m = dd.getMonth() + 1; //获取当前月份的日期
var d = dd.getDate();
return y + "-" + (m < 10 ? "0" + m : m) + "-" + d;
}