- dateChange(field, range) {
- this.queryParams[`${field}Start`] = null;
- this.queryParams[`${field}End`] = null;
- if (range) {
- this.queryParams[`${field}Start`] = range[0];
- this.queryParams[`${field}End`] = range[1];
- }
- this.handleQuery();
- // console.log(this.queryParams);
- },
复制代码- <el-form-item label="时间筛选" prop="pickTimeArr">
- <el-date-picker v-model="pickTimeArr"
- type="datetimerange" range-separator="至" start-placeholder="开始日期"
- :clearable="false"
- :default-time="['00:00:00', '23:59:59']"
- end-placeholder="结束日期" value-format="yyyy-MM-dd HH:mm:ss"
- @change="val => dateChange('pickTime', val)">
- </el-date-picker>
- </el-form-item>
复制代码 注意这个change事件,而且一开始需要先清空嗷,之前你就犯过这种错误。
还有clearable怎么设置,你记住了吗?
还有这个默认的时刻default-time
以及这本身是有默认事件的日期时间选择器,type要整明白 datetimerange
还有一个format。
获取近7天的日期时间
- methods: {
- // 获取近七天的日期
- getSevenDay() {
- const now = new Date();
- const sevenDaysAgo = new Date();
- sevenDaysAgo.setDate(now.getDate() - 7);
- // this.queryParams.pickTime = [sevenDaysAgo, now];
- this.pickTimeArr = [sevenDaysAgo, now];
- const yearEnd = now.getFullYear();
- const monthEnd = String(now.getMonth() + 1).padStart(2, '0');
- const dayEnd = String(now.getDate()).padStart(2, '0');
- // 获取当前时间
- const hoursNow = String(now.getHours()).padStart(2, '0');
- const minutesNow = String(now.getMinutes()).padStart(2, '0');
- const secondsNow = String(now.getSeconds()).padStart(2, '0');
- this.queryParams.pickTimeEnd = `${yearEnd}-${monthEnd}-${dayEnd} ${hoursNow}:${minutesNow}:${secondsNow}`;
- const yearStart = sevenDaysAgo.getFullYear();
- const monthStart = String(sevenDaysAgo.getMonth() + 1).padStart(2, '0');
- const dayStart = String(sevenDaysAgo.getDate()).padStart(2, '0');
- this.queryParams.pickTimeStart = `${yearStart}-${monthStart}-${dayStart} ${hoursNow}:${minutesNow}:${secondsNow}`;
- },}
复制代码 这里使用了面向AI编程,学习了新方法https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/String/padStart
但是你传值传反了!!!!
这里我们是需要在初始状态就筛选了近7天的数据,因此在created中使用了。
- created() {
- this.getSevenDay();
- const driver = this.$route.params && this.$route.params.autoPickDriver;
- if (driver) {
- this.queryParams.driver = driver;
- }
- this.getList();
- },
复制代码 Vue2生命周期:Vue2生命周期详细解说——周期图示、代码演示变革_vue2 errorcaptured-CSDN博客
还有需要在重置的时间进行再次查询:
- resetQuery() {
- this.resetForm('queryForm');
- this.getSevenDay();
- this.handleQuery();
- },
复制代码 下面是java的接口传参代码:
你只需要看String pickTimeStart 和 String pickTimeEnd
- /** 派单时间 */
- @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
- @ApiModelProperty(value = "派单时间开始")
- private String pickTimeStart;
- /** 派单时间结束 */
- @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
- @ApiModelProperty(value = "派单时间结束")
- private String pickTimeEnd;
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |