用moment获取一年内指定周的起始时间和结束时间、用户所选时间和前端传参时间不一致问题

本文主要是介绍用moment获取一年内指定周的起始时间和结束时间、用户所选时间和前端传参时间不一致问题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

问题1:

原代码:

//所选周selectedWeek:{handler(){let selectedWeek = parseInt(this.selectedWeek.substring(1))//计算所选周的周开始时间和周结束时间let selectedWeekFirstDay = moment().year(this.year).week(selectedWeek).day(1).format('YYYY-MM-DD')let selectedWeekLastDay = moment().year(this.year).week(selectedWeek).day(7).format('YYYY-MM-DD')this.selectedWeekDay = [ selectedWeekFirstDay, selectedWeekLastDay ]//清空原来展示的表格数据this.tableData = []//请求一次后台展示表格数据接口// this.showOutTableData()},immediate:false},//所选年year:{handler(){// this.year = newVallet selectedWeek = parseInt(this.selectedWeek.substring(1))//计算所选周的周开始时间和周结束时间let selectedWeekFirstDay = moment().year(this.year).week(selectedWeek).day(1).format('YYYY-MM-DD')let selectedWeekLastDay = moment().year(this.year).week(selectedWeek).day(7).format('YYYY-MM-DD')this.selectedWeekDay = [ selectedWeekFirstDay, selectedWeekLastDay ]//请求一次后台展示表格数据接口// this.showOutTableData()        },immediate:false},

结果每次修改下拉框的周值,打印出年份 周份相相应的周起始时间和周结束时间:

可以看到bug:用户选择的年份和周 打印结果都正确,但是周的起始时间和结束时间并不和它们对应。(博主当前测试时间为2020.12.28)

于是查看moment.js官方文档:

year():获取或设置年份weekYear():根据语言环境获取或设置周年isoWeekYear():获取或设置ISO周年

于是将year()改为weekyear():

结果打印为

周时间段终于对上了!!!!!!

问题2:

错误原因在于没有详细查看moment.js官方文档,这里需要查看显示模块的内容。

over,时间显示正确!

 

这篇关于用moment获取一年内指定周的起始时间和结束时间、用户所选时间和前端传参时间不一致问题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/596901

相关文章

Python使用OpenCV实现获取视频时长的小工具

《Python使用OpenCV实现获取视频时长的小工具》在处理视频数据时,获取视频的时长是一项常见且基础的需求,本文将详细介绍如何使用Python和OpenCV获取视频时长,并对每一行代码进行深入解析... 目录一、代码实现二、代码解析1. 导入 OpenCV 库2. 定义获取视频时长的函数3. 打开视频文

go中的时间处理过程

《go中的时间处理过程》:本文主要介绍go中的时间处理过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1 获取当前时间2 获取当前时间戳3 获取当前时间的字符串格式4 相互转化4.1 时间戳转时间字符串 (int64 > string)4.2 时间字符串转时间

怎样通过分析GC日志来定位Java进程的内存问题

《怎样通过分析GC日志来定位Java进程的内存问题》:本文主要介绍怎样通过分析GC日志来定位Java进程的内存问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、GC 日志基础配置1. 启用详细 GC 日志2. 不同收集器的日志格式二、关键指标与分析维度1.

Java 线程安全与 volatile与单例模式问题及解决方案

《Java线程安全与volatile与单例模式问题及解决方案》文章主要讲解线程安全问题的五个成因(调度随机、变量修改、非原子操作、内存可见性、指令重排序)及解决方案,强调使用volatile关键字... 目录什么是线程安全线程安全问题的产生与解决方案线程的调度是随机的多个线程对同一个变量进行修改线程的修改操

Redis出现中文乱码的问题及解决

《Redis出现中文乱码的问题及解决》:本文主要介绍Redis出现中文乱码的问题及解决,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1. 问题的产生2China编程. 问题的解决redihttp://www.chinasem.cns数据进制问题的解决中文乱码问题解决总结

Golang如何对cron进行二次封装实现指定时间执行定时任务

《Golang如何对cron进行二次封装实现指定时间执行定时任务》:本文主要介绍Golang如何对cron进行二次封装实现指定时间执行定时任务问题,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录背景cron库下载代码示例【1】结构体定义【2】定时任务开启【3】使用示例【4】控制台输出总结背景

MySQL 获取字符串长度及注意事项

《MySQL获取字符串长度及注意事项》本文通过实例代码给大家介绍MySQL获取字符串长度及注意事项,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录mysql 获取字符串长度详解 核心长度函数对比⚠️ 六大关键注意事项1. 字符编码决定字节长度2

全面解析MySQL索引长度限制问题与解决方案

《全面解析MySQL索引长度限制问题与解决方案》MySQL对索引长度设限是为了保持高效的数据检索性能,这个限制不是MySQL的缺陷,而是数据库设计中的权衡结果,下面我们就来看看如何解决这一问题吧... 目录引言:为什么会有索引键长度问题?一、问题根源深度解析mysql索引长度限制原理实际场景示例二、五大解决

Springboot如何正确使用AOP问题

《Springboot如何正确使用AOP问题》:本文主要介绍Springboot如何正确使用AOP问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录​一、AOP概念二、切点表达式​execution表达式案例三、AOP通知四、springboot中使用AOP导出

springboot项目打jar制作成镜像并指定配置文件位置方式

《springboot项目打jar制作成镜像并指定配置文件位置方式》:本文主要介绍springboot项目打jar制作成镜像并指定配置文件位置方式,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录一、上传jar到服务器二、编写dockerfile三、新建对应配置文件所存放的数据卷目录四、将配置文