电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

用vue寫一個日歷

瀏覽:2日期:2022-11-07 15:24:25

之前在上家公司做過一個公司人員考勤的東西,里面需要用到日歷,當時自己用vue隨便寫了一個,比較簡單,刪掉了其他功能的代碼,只留下日歷,直接看代碼

<template> <div class='lookForMonth_wrapper'> <div class='lookForMonth_top'> <div class='selectDate'> <div>{{year}} 年 {{month}} 月</div> <div class='upDownSelect'> <div @click='dateUp'></div> <div @click='dateDown'></div> </div> </div> </div> <div :style='calendarStyle'> <div v-for='(item,index) in calendarData' :key=’index’ :class='{ash:item.color===’ash’,date:index>6&&item.color!==’ash’}'> <p class='dateEdit'>{{item.label}}<i v-if='item.color!==’ash’&&index>=7'></i></p> <p v-if=’index>6’>上班</p> // 打工人 </div> </div> </div></template><script>export default { name: 'lookForMonth', data: () => { return { calendarData: [{label:'日'},{label: '一'}, {label:'二'},{label: '三'},{label: '四'},{label: '五'},{label: '六'}], //日歷循環渲染數據 year: 0, //當前日期年 month: 0, //當前日期月數 date: 0, //當前日期號數 day: -1, //當前星期幾 }; }, filters:{ }, computed: { // 根據當月日期詳情更改日歷表格高度 calendarStyle() { if (this.calendarData.length > 42) { return 'height: 701px;'; } else { return 'height: 601px;'; } } }, async created(){ // 獲取當前日期數據 this.getNow(); // 獲取當前月份一號的時間戳 let firstTime = +new Date(this.year,this.month-1,1,0,0,0) this.getCalendarDate(); // 給calendarData添加當月數據 }, mounted() { }, methods: { // 獲取當前時間 getNow() { let now = new Date() this.year = +now.getFullYear() this.month = +now.getMonth() + 1 this.date = +now.getDate() this.day = +now.getDay() }, // 獲取每個月的天數 monthDay(month) { if ([1,3,5,7,8,10,12].includes(month)) { return 31 } else if ([4,6,9,11].includes(month)) { return 30 } else if (month === 2) { // 判斷當年是否為閏年 if ( (this.year % 4 === 0 && this.year % 100 !== 0) || this.year % 400 === 0 ) { return 29 } else { return 28 } } }, // 給calendarData添加當月數據 getCalendarDate() { // 獲取當前月份一號星期幾 let firstDay = new Date(this.year + '-' + this.month + '-' + '01').getDay(); this.calendarData = [{label:'日'},{label: '一'}, {label:'二'},{label: '三'},{label: '四'},{label: '五'},{label: '六'}]; let num = parseInt(firstDay); let nowDays = this.monthDay(this.month); let lastMonth = this.month - 1>0?this.month - 1:12; let lastDays = this.monthDay(lastMonth); // 循環添加上一個月數據 for (let i = 0; i < num; i++) { this.calendarData.push({label:lastDays - num + i + 1,color:’ash’}); } // 循環添加當月數據 for (let i = 0; i < nowDays; i++) { this.calendarData.push({label:i + 1}); } // 循環添加下一個月數據 if (this.calendarData.length % 7 !== 0) { let surplusDay = 7 - (this.calendarData.length % 7); for (let i = 0; i < surplusDay; i++) { this.calendarData.push({label:i + 1,color:’ash’}); } } this.loading = false }, // 將日期調上 dateUp() { this.month--; if (this.month <= 0) { this.year--; this.month = 12; } this.getCalendarDate(); // 給calendarData添加當月數據 }, // 將日期調下 dateDown() { this.month++; if (this.month > 12) { this.year++; this.month = 1; } this.getCalendarDate(); // 給calendarData添加當月數據 }, }};</script><style lang='scss' scoped>.lookForMonth_wrapper { padding: 20px; width: 701px; margin: auto;}.lookForMonth_top { margin-bottom: 20px; overflow: hidden; .selectTeacher { float: left; } .selectDate { height: 30px; line-height: 30px; float: right; display: flex; .upDownSelect { display: flex; flex-direction: column; margin-top: -2px; margin-left: 5px; .upDownSelect_item { width: 0; height: 0; border: 7px solid transparent; cursor: pointer; } .upDownSelect_item:nth-child(1) { border-bottom: 7px solid #666; margin-bottom: 5px; &:hover { border-bottom: 7px solid skyblue; } } .upDownSelect_item:nth-child(2) { border-top: 7px solid #666; &:hover { border-top: 7px solid skyblue; } } } }}/* 日歷表樣式=======================================↓ */.calendar { width: 701px; border-top: 1px solid #ccc; border-left: 1px solid #ccc; display: flex; flex-wrap: wrap; box-sizing: border-box; .calendar_item { box-sizing: border-box; width: 100px; height: 100px; border-right: 1px solid #ccc; border-bottom: 1px solid #ccc; text-align: center; display: flex; flex-direction: column; justify-content: center; align-items: center; &.date:hover{ background: #eee; } .status{ margin-top: 10px; &.textBlue{ color: blue; } &.textRed{ color: brown; } } .el-icon-edit-outline{ cursor: pointer; margin-left: 7px; } } .ash{ color: gainsboro; } .dateEdit{ margin-bottom: 10px; }}</style>

效果如下:

用vue寫一個日歷

以上就是利用vue寫一個日歷的詳細內容,更多關于vue 日歷的資料請關注好吧啦網其它相關文章!

標簽: Vue
相關文章:
主站蜘蛛池模板: 抓斗式清污机|螺杆式|卷扬式启闭机|底轴驱动钢坝|污水处理闸门-方源水利机械 | IP检测-检测您的IP质量| 顺景erp系统_erp软件_erp软件系统_企业erp管理系统-广东顺景软件科技有限公司 | 金刚网,金刚网窗纱,不锈钢网,金刚网厂家- 河北萨邦丝网制品有限公司 | 嘉兴恒升声级计-湖南衡仪声级计-杭州爱华多功能声级计-上海邦沃仪器设备有限公司 | 企业彩铃制作_移动、联通、电信集团彩铃上传开通_彩铃定制_商务彩铃管理平台-集团彩铃网 | 低合金板|安阳低合金板|河南低合金板|高强度板|桥梁板_安阳润兴 北京租车牌|京牌指标租赁|小客车指标出租 | 南京种植牙医院【官方挂号】_南京治疗种植牙医院那个好_南京看种植牙哪里好_南京茀莱堡口腔医院 尼龙PA610树脂,尼龙PA612树脂,尼龙PA1010树脂,透明尼龙-谷骐科技【官网】 | 诺冠气动元件,诺冠电磁阀,海隆防爆阀,norgren气缸-山东锦隆自动化科技有限公司 | 手板_手板模型制作_cnc手板加工厂-东莞天泓 | 月嫂_保姆_育婴_催乳_母婴护理_产后康复_养老护理-吉祥到家家政 硫酸亚铁-聚合硫酸铁-除氟除磷剂-复合碳源-污水处理药剂厂家—长隆科技 | 低噪声电流前置放大器-SR570电流前置放大器-深圳市嘉士达精密仪器有限公司 | 蓝鹏测控平台 - 智慧车间系统 - 车间生产数据采集与分析系统 | 石家庄网站建设|石家庄网站制作|石家庄小程序开发|石家庄微信开发|网站建设公司|网站制作公司|微信小程序开发|手机APP开发|软件开发 | 粘度计NDJ-5S,粘度计NDJ-8S,越平水分测定仪-上海右一仪器有限公司 | 河南砖机首页-全自动液压免烧砖机,小型砌块水泥砖机厂家[十年老厂] | 消泡剂-水处理消泡剂-涂料消泡剂-切削液消泡剂价格-东莞德丰消泡剂厂家 | 5L旋转蒸发器-20L-50L旋转蒸发器-上海越众仪器设备有限公司 | 大倾角皮带机-皮带输送机-螺旋输送机-矿用皮带输送机价格厂家-河南坤威机械 | 健康管理师报名入口,2025年健康管理师考试时间信息网-网站首页 塑料造粒机「厂家直销」-莱州鑫瑞迪机械有限公司 | 桐城新闻网—桐城市融媒体中心主办| 丙烷/液氧/液氮气化器,丙烷/液氧/液氮汽化器-无锡舍勒能源科技有限公司 | 六维力传感器_六分量力传感器_模腔压力传感器-南京数智微传感科技有限公司 | 卫生型双针压力表-高温防腐差压表-安徽康泰电气有限公司 | 公交驾校-北京公交驾校欢迎您!| BESWICK球阀,BESWICK接头,BURKERT膜片阀,美国SEL继电器-东莞市广联自动化科技有限公司 | 不发火防静电金属骨料_无机磨石_水泥自流平_修补砂浆厂家「圣威特」 | 高效复合碳源-多核碳源生产厂家-污水处理反硝化菌种一长隆科技库巴鲁 | 中医中药治疗血小板减少-石家庄血液病肿瘤门诊部 | 大倾角皮带机-皮带输送机-螺旋输送机-矿用皮带输送机价格厂家-河南坤威机械 | 抖音短视频运营_企业网站建设_网络推广_全网自媒体营销-东莞市凌天信息科技有限公司 | elisa试剂盒价格-酶联免疫试剂盒-猪elisa试剂盒-上海恒远生物科技有限公司 | 游戏版号转让_游戏资质出售_游戏公司转让-【八九买卖网】 | 电磁流量计厂家_涡街流量计厂家_热式气体流量计-青天伟业仪器仪表有限公司 | 金属波纹补偿器厂家_不锈钢膨胀节价格_非金属伸缩节定制-庆达补偿器 | ★店家乐|服装销售管理软件|服装店收银系统|内衣店鞋店进销存软件|连锁店管理软件|收银软件手机版|会员管理系统-手机版,云版,App | 工业设计,人工智能,体验式3D展示的智能技术交流服务平台-纳金网 J.S.Bach 圣巴赫_高端背景音乐系统_官网 | 超声波反应釜【百科】-以马内利仪器 | 拉曼光谱仪_便携式|激光|显微共焦拉曼光谱仪-北京卓立汉光仪器有限公司 | SDG吸附剂,SDG酸气吸附剂,干式酸性气体吸收剂生产厂家,超过20年生产使用经验。 - 富莱尔环保设备公司(原名天津市武清县环保设备厂) | 金刚网,金刚网窗纱,不锈钢网,金刚网厂家- 河北萨邦丝网制品有限公司 |