首页

文章

vue判断当前时间是否是当月的前十天

发布网友 发布时间:2022-03-27 12:52

我来回答

1个回答

热心网友 时间:2022-03-27 14:21

根据一个时间戳,然后来显示对应的时间段。如果为今天,则显示对应的time,如果为昨天,则显示为昨天,如果为前天,则显示为前天。剩下的显示为对应的日期需求定义好了,然后开始实现
首先,是把时间戳转换为对应的时间格式,js提供了原生的获取对应年、月、日等格式的方法,但是不够灵活,这里提供了一个网上找的比较灵活获取固定格式的函数。const formatDate = (date, fmt) => {undefined
date = new Date(date);
if (typeof (fmt) === "undefined") {undefined
fmt = "yyyy-MM-dd HH:mm:ss";}
if (/(y+)/.test(fmt)) {undefined
fmt = fmt.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length))}
let o = {undefined
'Y': date.getFullYear(),
'M+': date.getMonth() + 1,
'd+': date.getDate(),
'H+': date.getHours(),
'm+': date.getMinutes(),
's+': date.getSeconds()}
for (let k in o) {undefined
if (new RegExp(`(${k})`).test(fmt)) {undefined
let str = o[k] + ''
fmt = fmt.replace(RegExp.$1, RegExp.$1.length === 1 ? str : ('00' + str).substr(str.length));}
}
return fmt
}
使用这个函数,需要提供一个时间戳和一个日期格式。
// `+new Date()` 为获取当前时间戳的简写形式
// `yyyy-MM-dd HH:mm:ss`为想要获取的日期格式
formatDate(+new Date(), 'yyyy-MM-dd HH:mm:ss') // 2019-12-18 20:29:31
接下来是使用过滤器来对时间戳进行过滤。vue提供了过滤器,可以定义全局过滤器和本地过滤器,我们定义一个本地过滤器
// common.js
// 这里使用模块化,把过滤器函数定义在外部js文件内
const formatDate ......
export { formatDate }
// index.vue
import { formatDate } from 'common'
export default {undefined
data () {undefined
return {undefine
dtime: 1576673222857

}
},
methods: {},
created() {},
filters: {undefined
formateDate(data, fmt) {undefined
return formatDate(data, fmt)
}
}
}
定义好了过滤器,就可以在页面中使用了
// index.vue
{undefined{ time | formateDate('MM-dd') }}
使用|(管道符)来对时间戳进行过滤,管道符左侧为过滤器的第一个参数,第二个参数为过滤的格式。定义好之后就会根据格式显示对应的时间格式了。
接下来最后一步就是对比今天的日期,来显示对应的时间(昨天,前天)
这里使用vue的if else来判断应该显示哪种日期格式。
{undefined{ time | formateDate('HH:mm') }}
// 这里把时间戳转换为`日`,然后跟当前的`日`进行比较,如果相等,则说明是今天的时间戳,则显示`time`

{undefined{ time | formateDate('HH:mm') }}
// 这里把**当前**的时间戳 `-1`,说明是昨天。比如说今天是18日,`-1`之后就是17,如果`time`转换后 与 17 相等,说明应该显示为`昨天`。
{undefined{ time | formateDate('HH:mm') }}
// `-2`为`前天`
{undefined{ time | formateDate('MM-dd') }
// 否则显示为对应的日期
贷款记录在征信保留几年? 安徽徽商城有限公司公司简介 安徽省徽商集团新能源股份有限公司基本情况 安徽省徽商集团有限公司经营理念 2019哈尔滨煤气费怎么有税? 快手删除的作品如何恢复 体育理念体育理念 有关体育的格言和理念 什么是体育理念 万里挑一算彩礼还是见面礼 绿萝扦插多少天后发芽 绿萝扦插多久发芽 扦插绿萝多久发芽 炖牛排骨的做法和配料 网络诈骗定罪标准揭秘 “流水不争先”是什么意思? mc中钻石装备怎么做 为什么我的MC里的钻石块是这样的?我想要那种。是不是版本的问题?如果是... 带“偷儿”的诗句 “君不见巴丘古城如培塿”的出处是哪里 带“奈何”的诗句大全(229句) 里翁行()拼音版、注音及读音 带“不虑”的诗句 “鲁肃当年万人守”的出处是哪里 无尘防尘棚 进出口报关流程,越详细越好。谢谢大家指教。 双线桥不是看化合价升多少就标多少的吗?为什么CL2+2KI=2KCL+I2中I失... 出师表高锰酸钾有画面了吗 2021年幼儿园新学期致家长一封信 电脑屏幕一条黑线怎么办? 销售代理商销售代理商的特点 商业代理商业代理的特征 如何看微信有没有开通微众银行 为什么微众没有开户 微众银行怎么开户 微众银行APP开户流程是什么? 唐古拉山海拔唐古拉山海拔是多少 怎么看待取消跳广场舞的人的退休金 如何选购新鲜的蓝田水柿? 恭城水柿柿树作用 创维洗衣机使用教程 创维全自动洗衣机怎么使用 自动开门器 狗羊属相婚姻相配吗 3岁的小孩不会说话怎么办 3岁孩子不会说话,应该挂什么科? 3岁小孩不会说话正常吗 鹿茸炖乌鸡怎么做? 新型冠状肺炎吃什么药可以预防 冰箱上电后一直响 食品生产许可证编号开头为“ G”。 库存过期香精 在vue文件中写个获取本地时间的代码,谢谢大佬们了,百度了好久,还是没搞出来 vue什么时候需要用自定义指令 华为荣耀9x有256g的吗,支持nfc吗 gov.cn 这种域名注册要提交什么资料啊 什么是域名?什么网站名?什么是URL 政务机构域名注册时网站名称怎么填 政府的域名预定是 域名后缀为.gov的就是美国政府机构是吗 有哪些机构域名 网站域名有哪几种? 政府机关,商业组织,军事部门的域名是什么 在internet域名系统的顶级域名中,政府机构用什么表示? 什么是.gov.cn域名?.gov.cn有什么优势? 解释下com/cn/net/gov/等后缀名,分别表示什么? 政府部门官方的网址后辍用com还是用cn?有什么区别? 我国因特网域名体系的二级类别域名规定,“教育机构”和政府部门的代码分别是什么 ,cn ,net gov.cn三个后缀的区别? 根据Internet的域名代码规定,域名中这些都代表什么网站? 在域名中什么表示政府网站的域名 政府部门域名代码 小米运动蓝牙耳机怎么配对? 红米10X可以连接小米真无线蓝牙耳机Air2SE吗 红米手机怎么链接不上小米蓝牙耳机了? 小米有线蓝牙耳机如何配对 怎么我的红米手机连接不上小米蓝牙耳机啊! 拼多多类目id不存在怎么回事 荣耀play和荣耀10有什么区别 华为荣耀10和荣耀PLAY有什么区别 买哪个好 荣耀10和荣耀play的区别 荣耀10和荣耀play对比 荣耀play手机和荣耀10有什么区别 荣耀play手机和荣耀10的区别 荣耀play和荣耀10的区别 荣耀play跟荣耀10有什么不一样吗 荣耀10和play有什么区别 荣耀10和荣耀Play,谁更具有性价比 荣耀play和荣耀10挑哪个 荣耀paly 荣耀10区别 荣耀10和荣耀play选择哪个 荣耀play 和荣耀10哪个好
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com