diff --git a/components/time-select/time-select.vue b/components/time-select/time-select.vue index 7fa134bd..51d62774 100644 --- a/components/time-select/time-select.vue +++ b/components/time-select/time-select.vue @@ -12,14 +12,19 @@ - - {{ item.name }} - + + + {{ item.name }} + + - - {{ item.time }}{{ propRangeType ? '-' + item.endtime : '' }} - + {{propPlaceholder}} + + + {{ item.time }}{{ propRangeType ? '-' + item.endtime : '' }} + + @@ -34,6 +39,10 @@ export default { type: String, default: '请选择时间' }, + propPlaceholder: { + type: String, + default: '' + }, propSubhead: { type: String, default: '' @@ -100,7 +109,9 @@ export default { select_dateStr: '', selectTime: '', selectEndime: '', - activeTimeArr: [] + activeTimeArr: [], + day_active_index: 0, + time_active_index: '' }; }, beforeMount() { @@ -115,16 +126,16 @@ export default { _stopFunc() {}, _dataOpen() { - this._selectEvent(); + this._selectEvent('open'); }, _closeBtnClose() { if(this.propCloseBtn) { - this._selectEvent(); + this._selectEvent('close'); } }, _maskClose() { if(this.propMaskHide) { - this._selectEvent(); + this._selectEvent('close'); } }, _selectEvent(data = '') { @@ -141,19 +152,24 @@ export default { this.selectDateStr = timeList[_ind].dateStr; this.select_dateStr = timeList[_ind]._dateStr; this.activeTimeArr = timeList[_ind].timeArr; + this.day_active_index = e; }, _changeTime(e) { - let _ind = e - 0; let { activeTimeArr } = this; let timeArr = JSON.parse(JSON.stringify(activeTimeArr)); timeArr.forEach(ele => { ele.checked = false; }); - timeArr[_ind].checked = true; - this.selectTime = timeArr[_ind].time; - this.selectEndime = timeArr[_ind].endtime; + let _data = ''; + if(e !== '') { + let _ind = e - 0; + timeArr[_ind].checked = true; + this.selectTime = timeArr[_ind].time; + this.selectEndime = timeArr[_ind].endtime; + _data = this._handleData(); + } + this.time_active_index = e; this.activeTimeArr = timeArr; - let _data = this._handleData(); this._selectEvent(_data); }, _handleData() { @@ -208,6 +224,7 @@ export default { } this.timeList = _timeList; + this.time_active_index = this.propDefaultTime || ''; }, _setDefaultTime(list) { for (let index = 0; index < list.length; index++) { diff --git a/pages/buy/buy.vue b/pages/buy/buy.vue index 413f4f2f..16b9a6a2 100644 --- a/pages/buy/buy.vue +++ b/pages/buy/buy.vue @@ -123,7 +123,7 @@ {{buy_datetime_info.title}} - + {{buy_datetime_info.placeholder}} {{buy_datetime_info.value}} @@ -800,15 +800,15 @@ }, // 下单选择时间 - buy_datetime_event(e) { - var temp = this.buy_datetime_info; - temp['status'] = !temp.status; - if((e || null) != null) { - temp['value'] = e._date || ''; - } - this.setData({ - buy_datetime_info: temp - }) + buy_datetime_event(e) { + var temp = this.buy_datetime_info; + temp['status'] = !temp.status; + if(e != 'open' && e != 'close') { + temp['value'] = (((e || null) != null) ? e._date : '') || ''; + } + this.setData({ + buy_datetime_info: temp + }); }, // 打开次卡选择