用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

相关文章

java -jar example.jar 产生的日志输出到指定文件的方法

《java-jarexample.jar产生的日志输出到指定文件的方法》这篇文章给大家介绍java-jarexample.jar产生的日志输出到指定文件的方法,本文给大家介绍的非常详细,对大家的... 目录怎么让 Java -jar example.jar 产生的日志输出到指定文件一、方法1:使用重定向1、

基于Python实现数字限制在指定范围内的五种方式

《基于Python实现数字限制在指定范围内的五种方式》在编程中,数字范围限制是常见需求,无论是游戏开发中的角色属性值、金融计算中的利率调整,还是传感器数据处理中的异常值过滤,都需要将数字控制在合理范围... 目录引言一、基础条件判断法二、数学运算巧解法三、装饰器模式法四、自定义类封装法五、NumPy数组处理

Linux部署中的文件大小写问题的解决方案

《Linux部署中的文件大小写问题的解决方案》在本地开发环境(Windows/macOS)一切正常,但部署到Linux服务器后出现模块加载错误,核心原因是Linux文件系统严格区分大小写,所以本文给大... 目录问题背景解决方案配置要求问题背景在本地开发环境(Windows/MACOS)一切正常,但部署到

MySQL磁盘空间不足问题解决

《MySQL磁盘空间不足问题解决》本文介绍查看空间使用情况的方式,以及各种空间问题的原因和解决方案,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧... 目录查看空间使用情况Binlog日志文件占用过多表上的索引太多导致空间不足大字段导致空间不足表空间碎片太多导致空间不足临时表空间

Mybatis-Plus 3.5.12 分页拦截器消失的问题及快速解决方法

《Mybatis-Plus3.5.12分页拦截器消失的问题及快速解决方法》作为Java开发者,我们都爱用Mybatis-Plus简化CRUD操作,尤其是它的分页功能,几行代码就能搞定复杂的分页查询... 目录一、问题场景:分页拦截器突然 “失踪”二、问题根源:依赖拆分惹的祸三、解决办法:添加扩展依赖四、分页

Java中InputStream重复使用问题的几种解决方案

《Java中InputStream重复使用问题的几种解决方案》在Java开发中,InputStream是用于读取字节流的类,在许多场景下,我们可能需要重复读取InputStream中的数据,这篇文章主... 目录前言1. 使用mark()和reset()方法(适用于支持标记的流)2. 将流内容缓存到字节数组

解决若依微服务框架启动报错的问题

《解决若依微服务框架启动报错的问题》Invalidboundstatement错误通常由MyBatis映射文件未正确加载或Nacos配置未读取导致,需检查XML的namespace与方法ID是否匹配,... 目录ruoyi-system模块报错报错详情nacos文件目录总结ruoyi-systnGLNYpe

MySQL中DATE_FORMAT时间函数的使用小结

《MySQL中DATE_FORMAT时间函数的使用小结》本文主要介绍了MySQL中DATE_FORMAT时间函数的使用小结,用于格式化日期/时间字段,可提取年月、统计月份数据、精确到天,对大家的学习或... 目录前言DATE_FORMAT时间函数总结前言mysql可以使用DATE_FORMAT获取日期字段

解决Failed to get nested archive for entry BOOT-INF/lib/xxx.jar问题

《解决FailedtogetnestedarchiveforentryBOOT-INF/lib/xxx.jar问题》解决BOOT-INF/lib/xxx.jar替换异常需确保路径正确:解... 目录Failed to get nested archive for entry BOOT-INF/lib/xxx

解决hive启动时java.net.ConnectException:拒绝连接的问题

《解决hive启动时java.net.ConnectException:拒绝连接的问题》Hadoop集群连接被拒,需检查集群是否启动、关闭防火墙/SELinux、确认安全模式退出,若问题仍存,查看日志... 目录错误发生原因解决方式1.关闭防火墙2.关闭selinux3.启动集群4.检查集群是否正常启动5.