直播平台源代码,时间范围(range-picker)自定义时间段范围
直播平台源代码,时间范围(range-picker)自定义时间段范围
1 | import moment from "moment" ;<br><a-range-picker<br> v-model:value= "searchForm.dataTime" <br> value-format= "YYYY-MM-DD" <br> :disabledDate= "disabledDateHandler" <br> @calendarChange= "dates => dateCalc.selectDateTime = dates[0]" <br> @change= "dateCalc.selectDateTime = ''" <br> @openChange= "_ => dateCalc.selectDateTime = ''" <br> :ranges= "timeScopedPre" <br> /><br> <br> const searchForm = ref<SearchFormTypes>({<br> dataTime:[moment().subtract(7, 'days' ).format( 'YYYY-MM-DD' ),moment().subtract(1, 'days' ).format( 'YYYY-MM-DD' )] //数据时间 默认前七天<br>});<br>//计算日期相关数据<br>const dateCalc = ref<any>({<br> selectDateTime:"",//计算日期数据-限制30天<br>})<br>const timeScopedPre = shallowRef<any>({<br> '近七日':[moment().subtract(7,'d'),moment().subtract(1,'d')],<br> '近14日':[moment().subtract(14,'d'),moment().subtract(1,'d')],<br> '近30日':[moment().subtract(30,'d'),moment().subtract(1,'d')],<br>})<br>/* 禁用时间 */<br>const disabledDateHandler = (current) => {<br> if(dateCalc.value.selectDateTime){<br> //这里实现下面功能<br> //只能选取30天,这里需要填写29,不然会出现多出来了一天的情况<br> //和禁止选择今天和之后的日期<br> return current > moment(dateCalc.value.selectDateTime).add(29,'days') ||<br> current < moment(dateCalc.value.selectDateTime).subtract(29,'days') ||<br> current > moment().subtract(1,'days').endOf('day')<br> }else {<br> //这里实现下面功能<br> //禁止选择今天和之后的日期<br> return current > moment().subtract(1,'days').endOf('day');<br> }<br>} |
属性值一些说明
1 | <br>timeScopedPre:时间预设<br>import moment from "moment" ;<br> //时间范围预设<br>const timeScopedPre = shallowRef<any>({<br> '近七日':[moment().subtract(7,'d'),moment().subtract(1,'d')],<br> '近14日':[moment().subtract(14,'d'),moment().subtract(1,'d')],<br> '近30日':[moment().subtract(30,'d'),moment().subtract(1,'d')],<br>}) |
disabledDateHandler函数
1 | 你如果需要禁用n天,这里只需要传入n-1就可以,比如禁用180天,这里把29改为179即可<br> /* 禁用时间 */ <br> const disabledDateHandler = (current) => {<br> if (dateCalc.value.selectDateTime){<br> //这里实现下面功能<br> //只能选取30天,这里需要填写29,不然会出现多出来了一天的情况<br> //和禁止选择今天和之后的日期<br> return current > moment(dateCalc.value.selectDateTime).add(29,'days') ||<br> current < moment(dateCalc.value.selectDateTime).subtract(29,'days') ||<br> current > moment().subtract(1,'days').endOf('day')<br> }else {<br> //这里实现下面功能<br> //禁止选择今天和之后的日期<br> return current > moment().subtract(1,'days').endOf('day');<br> }<br>} |
searchForm值
1 | import moment from "moment" ;<br> const searchForm = ref<SearchFormTypes>({<br> dataTime:[moment().subtract(7, 'days' ).format( 'YYYY-MM-DD' ),moment().subtract(1, 'days' ).format( 'YYYY-MM-DD' )] //数据时间 默认前七天<br>}); |
dateCalc值
1 | //计算日期相关数据<br>const dateCalc = ref<any>({<br> selectDateTime:"",//计算日期数据-限制30天<br>}) |
以上就是 直播平台源代码,时间范围(range-picker)自定义时间段范围,更多内容欢迎关注之后的文章
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
2021-11-08 短视频app开发,短视频动态功能上传图片时,规定图片压缩的大小
2021-11-08 短视频程序开发,RecyclerView自带的滚动条
2021-11-08 app直播源码,TextView部分字体颜色高亮