<el-form-item>
<el-date-picker v-model="timeFrom"
type="daterange"
:clearable="false"
value-format="yyyy-MM-dd"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期">
</el-date-picker>
</el-form-item>
format:
显示在输入框中的格式(默认为yyyy-MM-dd HH:mm:ss)
value-format:
可选,绑定值的格式(不指定则绑定值默认为 Date 对象)
value-format="yyyy-MM-dd" 可解决时间差问题
只能选择今天之后的时间 时间管理器里加上这个属性
:picker-options="pickerOption"
data(){
return{
pickerOption: {
disabledDate(time) {
return time.getTime() < Date.now() - 24 * 60 * 60 * 1000
},
},}
因为时间选择器返回的是一个数组,在发请求的时候要做处理
if (this.timeFrom[0]) {
;(data.startTime = this.timeFrom[0] + ' 00:00:00'),
(data.endTime = this.timeFrom[1] + ' 23:59:59')
}
getPageList() {
if (this.QueryRequest.pushTimeRange == -1) {
this.QueryRequest.pushTimeRange = ''
}
let data = {
...this.QueryRequest,
startTime: '',
endTime: '',
}
if (this.timeFrom[0]) {
;(data.startTime = this.timeFrom[0] + ' 00:00:00'),
(data.endTime = this.timeFrom[1] + ' 23:59:59')
}
houseKeeperPageList(data).then((res) => {
if (!res.success) return
if (res.data.list.length == 0 && this.QueryRequest.pageNum != 1) {
this.QueryRequest.pageNum = 1
this.getPageList()
return
}
const targetObjMap = {}
this.targetList.forEach((v) => (targetObjMap[v.value] = v.label))
this.tableData = res.data.list.map((v) => {
let pushTypeItem = this.pushTypeList.find(
(item) => item.value == v.pushType
)
v.method = v.method == 1 ? '站内信' : ''
v.pushTypeLabel = pushTypeItem ? pushTypeItem.label : ''
v.targetLabel = v.target.map((value) => targetObjMap[value]).join('/')
return v
})
this.totalPage = Number(res.data.total)
})
},