<template> <el-date-picker v-model="value1" type="daterange" range-separator="To" start-placeholder="开始日期" end-placeholder="结束日期" :size="size" @change="sarend" /> </template>
<script setup> const tableData = ref([]) const formattedDates = ref([]) const value1 = ref('') </script>
const sarend = () => { // 对每个输入日期进行处理 value1.value.forEach((date) => { let inputDate = new Date(date); // 将输入的字符串日期转换为 Date 对象 let year = inputDate.getFullYear(); // 获取年份 let month = inputDate.getMonth() + 1; // 获取月份(月份范围是 0 到 11,因此需要加 1) let day = inputDate.getDate(); // 获取日期 let formattedDate = year + '-' + (month < 10 ? '0' + month : month) + '-' + (day < 10 ? '0' + day : day); // 格式化日期为 'YYYY-MM-DD' 形式 formattedDates.value.push(formattedDate); // 将格式化后的日期保存起来 }); let startTimestamp = new Date(formattedDates.value[0]).getTime(); // 获取开始日期的时间戳 let endTimestamp = new Date(formattedDates.value[1]).getTime(); // 获取结束日期的时间戳 let result = tableData.value.filter((item) => { let itemTimestamp = new Date(item.create_time).getTime(); // 获取数据项的时间戳 return itemTimestamp >= startTimestamp && itemTimestamp <= endTimestamp; // 返回在日期范围内的数据项 }); tableData.value = result; // 更新表格数据 };