当前位置: 首页 > news >正文

antd vue 日期控件的使用(选年份)

Ant Design Vue-------DatePicker

今天就讲讲Ant Design Vue下的控件----DatePicker 日期选择框

结合项目中的需求,先讲一下选择年份如何使用,需求:

(1)将库中存的年份读出到DatePicker控件里面;

(2)年份比较。

(3)直接使用年份控件时,如何设置默认值,要求默认值是去年

逻辑处理:

(1)数据库两个年份,起始和结束,定义为number型;

(2)DTO定义类型为“int?”

(3)前端先定义:

import {Dayjs} from 'dayjs'; interface DateInfo{ id:string; startYear:Dayjs; endYear:Dayjs; }

组件中声明了一个响应式状态集合

import dayjs,{Dayjs} from 'dayjs'; import {UnwrapRef,reactive} from 'vue'; const yearFormat = 'YYYY'; const dateInfo:UnwrapRef<DateInfo> = reactive({ id:'', startYear:'', endYear:'' });

------------------模板使用控件---------------------------

<a-form ref="formRef" :model="dateInfo" :label-col="labelCol" :wrapper-col="{ span: 24 }"> <a-form-item label="起始年" name="startYear" :rules="[{ required: true, message: '请选择起始年份' }]"> <a-date-picker v-model:value="dateInfo.startYear" picker="year" :format="yearFormat" /> </a-form-item> <a-form-item label="截止" name="endYear" :rules="[{ required: true, message: '请选择截止年份' }]"> <a-date-picker v-model:value="dateInfo.endYear" picker="year" :format="yearFormat" /> </a-form-item> </a-form>

picker="year" 确定了选年控件;format:确定了日期格式;我想找到最小日期,最大日期的控制,没找到,如果有哪位大神看到了,麻烦给我留个答案吧

--------------------赋值-----------------------------------

dateInfo.interestId = myId.value;

dateInfo.startYear = dayjs(props.startYear.toString(), yearFormat);//props.startYear:后台取值

dateInfo.endYear = dayjs(props.endYear.toString(), yearFormat);

----------------比较----------------------------------------

if (dateInfo.startYear < dayjs(dayjs().format(yearFormat), yearFormat)) {

//dayjs().format(yearFormat):返回当前的年份

//dayjs('日期值X',format):返回X的Dayjs类型,而dayjs('日期值X').format(format):返回字符串

message.error('起始时间不能小于现在的年份');

} else if (dateInfo.startYear > dateInfo.endYear) {

message.error('起始时间不能大于终止时间');

} else{

//主体代码

}

直接使用年份控件时,如何设置默认值,要求默认值是去年:

//html: <a-date-picker v-model:value="selectedYear" picker="year" placeholder="请选择年份" /> //js import { onMounted, reactive, ref} from 'vue'; import dayjs from 'dayjs'; import type { Dayjs } from 'dayjs'; const selectedYear = ref<Dayjs>(); onMounted(() => { selectedYear.value = dayjs().subtract(1, 'year');//用subtract获取 });
http://www.jsqmd.com/news/1354281/

相关文章:

  • AnimToSimple 简单骨骼动画转顶点动画
  • AI科技热点日报 | 2026年8月7日
  • VC++ MFC实战:从零开发经典连连看游戏,掌握Windows桌面开发核心
  • ProCapNet常见问题解答:解决安装、预测与结果解读中的10个关键问题
  • 10分钟上手Borzoi-human:multimolecule库安装与DNA序列预测实战演示
  • DNA序列如何转化为覆盖度预测?Borzoi-human的DnaTokenizer工作原理详解
  • 滨州冠晶石厂家推荐、高仿真冠晶石厂家哪家好?2026年8月倍饰嘉仿石漆滨州直营店地址电话核对 - geo88
  • Policy Plus完全指南:让Windows家庭版也能享受专业组策略编辑体验
  • DevExpress WPF Tree List组件,让数据可视化程度更高!(一)
  • 5种方法彻底告别电脑锁屏烦恼:Mouse Jiggler鼠标防休眠工具完整指南
  • 中国车牌生成器终极指南:5分钟创建合规车牌图像数据
  • FF14插件框架深度解析:Dalamud架构原理与高级应用实战
  • MBTI 免登录在哪测?免费 MBTI 测试在线入口 无需注册 - 时讯资讯
  • 5分钟看懂MMSplice:RNA剪接变异分析的终极入门教程
  • 保护隐私测测评,免费 MBTI 测试在线入口 无需注册 - 时讯资讯
  • ubuntu20.04设置开机自启动roscore和ros节点
  • LIBERO四大基准测试全解析:MolmoAct2-LeRobot vs 原版模型性能对比
  • 深圳外贸企业GEO出海指南:让AI成为你的“首席推荐官” - 熊猫出海GEO
  • IDEA中JDK的安装
  • 川渝做入境哪家旅行社实力更好:蓉之旅实力出众 - 思溯深度专栏
  • 2026 高精密 SMT 载带厂家实力**|微小元件 0.02mm 公差载带厂商综合对比 - 品牌品鉴馆
  • 长株潭智能体赋能腾讯元器链接共享
  • 2026天津春考集训全指南:正规机构选择与备考方案详解 - 贰拾壹度
  • 电磁夹爪怎么选型?2026年高性价比电磁夹爪品牌推荐 - 品牌深度评测
  • 3步实现游戏实时翻译:终极免费工具LunaTranslator完整指南
  • PrITTI:革命性3D语义城市场景生成框架,基于CVPR 2026最新研究成果
  • Kendo UI,一个加速Web应用界面开发的JavaScript组件库!
  • 界面控件Kendo UI R2 2023,让应用主题设计能力在上一个台阶!
  • 猫抓浏览器资源嗅探扩展:高效捕获网页视频资源的终极指南
  • 三步搞定PT下载:PT助手Plus浏览器插件终极指南