封裝日期選擇器組件,帶有上周,下周按鈕

ui圖

在這里插入圖片描述
組件代碼如下:

<template><div><el-date-pickerv-model="dateRange"type="daterange"align="right"size="mini":editable="false"unlink-panelsrange-separator=""start-placeholder="開始日期"end-placeholder="結束日期"value-format="yyyy-MM-dd"format="yyyy-MM-dd"@change="handleDateChange":readonly="true"></el-date-picker><el-button-group><el-button size="mini" @click="prevWeek" style="margin-right: 5px;">上一周</el-button><el-button size="mini" @click="nextWeek">下一周</el-button></el-button-group></div>
</template><script>
export default {name: 'DateRangePicker',props: {value: {type: Array,default: () => []}},data() {return {dateRange: this.value.length ? [...this.value] : this.getDefaultWeekRange(),};},watch: {value(newVal) {if (newVal.length) {this.dateRange = [...newVal];}}},methods: {getDefaultWeekRange() {const end = new Date();const start = new Date();start.setTime(start.getTime() - 3600 * 1000 * 24 * 6);return [start, end];},handleDateChange(val) {if (val && val.length === 2) {const formattedVal = [this.formatDate(val[0]),this.formatDate(val[1])];this.$emit('input', formattedVal);this.$emit('change', formattedVal);} else {this.$emit('input', val);this.$emit('change', val);}},formatDate(date) {if (!date) return '';const d = new Date(date);const year = d.getFullYear();const month = String(d.getMonth() + 1).padStart(2, '0');const day = String(d.getDate()).padStart(2, '0');return `${year}-${month}-${day}`;},prevWeek() {const [start, end] = this.dateRange;const newStart = new Date(start);const newEnd = new Date(end);newStart.setDate(newStart.getDate() - 7);newEnd.setDate(newEnd.getDate() - 7);this.dateRange = [newStart, newEnd];this.handleDateChange(this.dateRange);},nextWeek() {const [start, end] = this.dateRange;const newStart = new Date(start);const newEnd = new Date(end);newStart.setDate(newStart.getDate() + 7);newEnd.setDate(newEnd.getDate() + 7);this.dateRange = [newStart, newEnd];this.handleDateChange(this.dateRange);}}
};
</script><style scoped>
.date-range-picker {display: flex;align-items: center;
}
.el-button-group {margin-left: 10px;
}
</style>

如何調用組件

<template><date-range-picker v-model="dateRange" @change="handleDateChange" />
</template><script>
import DateRangePicker from '@/views/components/DateRangePicker.vue';export default {components: { DateRangePicker },data() {return {dateRange: []};},methods: {handleDateChange(range) {console.log('日期范圍變化:', range);}}
};
</script>

打印結果如下
在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/921791.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/921791.shtml
英文地址,請注明出處:http://en.pswp.cn/news/921791.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

基于SpringBoot+MYSQL開發的AI智能大數據醫療診斷平臺

角色&#xff1a; 管理員、醫生、居民 技術&#xff1a; SpringBoot、MyBatis、MySQL、Shiro、Beetl、Swagger、jQuery、Bootstrap 核心功能&#xff1a; 這是一個基于SpringBoot的社區醫療管理平臺&#xff0c;旨在為管理員提供用戶、角色、部門、菜單、日志等系統管理功能&am…

【MFC 小白日記】對話框編輯器里“原型圖像”到底要不要勾?3 分鐘看懂!

摘要&#xff1a;本文解析了MFC中Picture Control的"原型圖像(Prototype Image)"屬性的真實作用。該屬性僅在設計時提供可視化的占位圖預覽&#xff0c;方便UI布局&#xff0c;運行時不會影響程序表現。文章通過對比實驗驗證&#xff0c;勾選后會在對話框編輯器中顯示…

微信開放平臺第三方平臺,可以管理多個微信小程序

大家好&#xff0c;我是小悟。 這個系統可以幫助服務商更好地管理多個商家小程序&#xff0c;無需管理多個商家小程序的賬號密碼或者appId和secret&#xff0c;大大提升效率。 不需要頻繁登錄小程序后臺就能完成上傳代碼、認證、備案、提交代碼審核、發布小程序等操作。 這里錄…

Java全棧學習筆記32

-- drop table t_stu;-- unique 唯一約束的列允許為null-- 如果在之后的操作中。需要某列必須為key&#xff0c;才能做一些操作的情況下。也可以使用唯一約束代替主鍵約束-- create table t_stu(-- studId int,-- tel varchar(11) unique,-- sex varchar(1),-- addr va…

linux升級系統,重啟出現Minimal BASH-like line editingis supported

文章目錄一.問題背景二.解決步驟2.1確認系統分區2.2手動引導2.3 重建grub引導2.4 還原軟件包 一.問題背景 閑來無事&#xff0c;把ubuntu25.04通過sudo do-release-upgrade命令升級到了ubuntu25.10.在升級的過程會出現以下問題 1.自動替換flatpak程序為snap2.請求是否清除舊依賴…

type(類型別名)和 interface的區別和最佳實踐

核心結論在大多數情況下&#xff0c;它們可以互換使用&#xff0c;都能描述對象的結構。它們的區別更多在于設計和擴展能力上。主要區別總結表特性interface (接口)type (類型別名)擴展方式使用 extends 繼承interface A extends B {}使用 & 交叉類型type A B & C合并…

vscode中使用git、githup的基操

一、git提交 配置賬戶密碼 查看用戶信息 git config --global user.name # 查看用戶名 git config --global user.email # 查看郵箱賬戶配置 # 設置全局用戶名和郵箱 git config --global user.name "你的用戶名" git config --global user.email "你的郵箱&q…

jsBridge接入流程

import deviceInfo from ./deviceInfo import { setRefreshToken } from ./token// 設備判斷 const u navigator.userAgent export const isAndroid u.indexOf(Android) > -1 || u.indexOf(Adr) > -1 export const isIOS !!u.match(/\(i[^;];( U;)? CPU.Mac OS X/)…

【C++】19. 封裝紅?樹實現set和map

文章目錄一、源碼及框架分析二、模擬實現map和set1、insert的實現2、iterator的實現3、map?持[ ]4、模擬實現的完整源代碼1&#xff09;RBTree.h2&#xff09;Myset.h3&#xff09;Mymap.h4&#xff09;Test.cpp一、源碼及框架分析 SGI-STL30版本源代碼&#xff0c;map和set的…

面試不會問題

1. 什么是表鎖&#xff1f;什么是行鎖&#xff1f;什么情況下會使用表鎖&#xff1f;InnoDB引擎通過“索引”實現行鎖&#xff08;鎖定滿足條件的行&#xff09;&#xff0c;但如果操作無法通過索引定位行&#xff0c;會導致行鎖失效&#xff0c;進而升級為表鎖。常見的表現為&…

達夢數據庫-用戶,權限,角色

達夢數據庫-用戶,權限,角色 在達夢數據庫(DM8)中,用戶(User)、權限(Privilege)和角色(Role) 是數據庫安全體系的核心組成部分,用于控制誰可以訪問數據庫、能訪問哪些對象以及能執行哪些操作。 下面為你提供一份全面、詳細、結構化的說明,幫助你深入理解達夢數據…

uniapp原生插件 TCP Socket 使用文檔

uniapp原生插件 TCP Socket 使用文檔 試了插件市場幾個TCP Socket插件都不能實現監聽服務器主動斷開&#xff0c;于是閑來無事就開發了一款&#xff0c;本插件是一個基于 Netty 實現的 TCP 通信模塊&#xff0c;用于在 UniApp 插件中提供 TCP 連接、數據發送和連接管理功能。以…

VM中CentOS 7密碼重置

重啟虛擬機點擊e進入內核處理向下劃找到UTF-8在后面輸入rd.breakctrl X進入單用戶模式mount -o remount,rw/sysroot進行掛盤 chroot /sysroot訪問系統&#xff0c;并使用passwd修改root密碼 出現亂碼 輸入LANGen touch /.autorelabel 保存配置 exit exit退出等待系統重新打開&…

車規級MOS管AEC-Q101認證的關鍵參數解讀與失效模式-深圳阿賽姆

摘要本文拆解AEC-Q101認證的7大關鍵測試項&#xff08;UIS/溫度循環/THB等&#xff09;&#xff0c;結合M120N06JC等型號實測數據&#xff0c;解析雪崩失效/柵氧擊穿/綁定線脫落等故障機理&#xff0c;附選型核查表一、AEC-Q101認證核心測試項與參數解讀1.1 非鉗位電感開關測試…

嵌入式鐵頭山羊stm32-ADC實現軟件觸發的常規序列的單通道轉換-Day25

目錄 一、實驗目的 二、電路連接 三、實驗執行&#xff08;五步&#xff09; 1.初始化ADC的IO引腳 2.配置ADC的時鐘&#xff0c;注意要小于14MHz 3.根據ADC的編程接口 實現初始化ADC的基本參數 4.配置常規序列并閉合觸發輸入開關 5.閉合總開關、啟動并讀取轉換結果 四…

多模態模型出現“幻覺”,描述了表格中不存在的內容,如何修正?

在日常工作中&#xff0c;多模態模型的 “幻覺” 問題已成為影響效率的關鍵痛點 —— 當我們需要模型基于文檔生成建議性內容&#xff08;如行業報告分析、論文數據解讀等&#xff09;時&#xff0c;模型常因無法準確理解文檔信息&#xff0c;輸出包含 “虛構內容” 的結果&…

Java AI 智能問數:Function調用版如何重塑企業數據決策

Java AI 智能問數&#xff1a;Function調用版如何重塑企業數據決策 在數字化轉型浪潮中&#xff0c;企業一把手常面臨數據查詢的痛點&#xff1a;分析師需編寫復雜SQL&#xff0c;業務人員依賴IT支持&#xff0c;決策鏈條冗長。傳統方法效率低下&#xff0c;而自然語言處理&…

AI-調查研究-74-具身智能 機器人學習新突破:元學習與仿真到現實遷移的挑戰與機遇

點一下關注吧&#xff01;&#xff01;&#xff01;非常感謝&#xff01;&#xff01;持續更新&#xff01;&#xff01;&#xff01; &#x1f680; AI篇持續更新中&#xff01;&#xff08;長期更新&#xff09; AI煉丹日志-31- 千呼萬喚始出來 GPT-5 發布&#xff01;“快的…

勞務員的就業前景如何?

勞務員的就業前景整體較為樂觀&#xff0c;受到行業需求、政策支持等因素的積極影響&#xff0c;同時也面臨著一些挑戰。以下是具體分析&#xff1a;1.就業優勢行業需求穩定&#xff1a;建筑行業作為國民經濟的支柱產業&#xff0c;持續發展使得對勞務員的需求較為穩定。無論是…

libvirt 新手指南:從零開始掌握虛擬化管理

引言 在云計算、大數據和邊緣計算的時代&#xff0c;虛擬化技術已成為 IT 基礎設施的核心支柱。它允許我們在單一物理服務器上運行多個虛擬機&#xff08;Virtual Machine&#xff0c;簡稱 VM&#xff09;&#xff0c;從而實現資源的高效利用、快速部署和靈活擴展。對于新手來說…