From 58ca071d0bae76f21ed59a5c4bbeabe8707b9fdb Mon Sep 17 00:00:00 2001 From: lion <120344285@qq.com> Date: Tue, 30 Sep 2025 11:59:47 +0800 Subject: [PATCH] up --- common/config.js | 4 +-- components/calendar-grid/calendar-grid.vue | 31 ++++++++++++++++++++-- 2 files changed, 31 insertions(+), 4 deletions(-) diff --git a/common/config.js b/common/config.js index f69e14f..4f0fb9f 100644 --- a/common/config.js +++ b/common/config.js @@ -1,7 +1,7 @@ const mode = 'production'; //devLocal:本地测试、devOnline:线上测试、production:生产环境 let ROOTPATH = ''; //域名 -let baseUrl = "https://suzhoukeji-test.ali251.langye.net" -// let baseUrl = "https://wx.sstbc.com" +// let baseUrl = "https://suzhoukeji-test.ali251.langye.net" +let baseUrl = "https://wx.sstbc.com" switch (mode) { case 'devLocal': ROOTPATH = baseUrl diff --git a/components/calendar-grid/calendar-grid.vue b/components/calendar-grid/calendar-grid.vue index b1a8974..13d574e 100644 --- a/components/calendar-grid/calendar-grid.vue +++ b/components/calendar-grid/calendar-grid.vue @@ -18,7 +18,7 @@ {{ cell.date }} @@ -432,6 +434,31 @@ export default { return false } }, + getSingleEventPosition(fullDate, eventIndex) { + // 为单个事件计算垂直位置,避免重叠 + const events = this.eventsForDate(fullDate) || [] + const hasMultiDay = this.hasMultiDayCover(fullDate) + + // 如果只有一个事件且没有跨天事件,使用默认布局 + if (events.length === 1 && !hasMultiDay) { + return {} + } + + // 多事件或与跨天事件共存时,使用垂直堆叠布局 + const eventHeight = 20 // 每个事件的高度(px) + const eventSpacing = 2 // 事件间距(px) + const topOffset = eventIndex * (eventHeight + eventSpacing) + + return { + position: 'absolute', + top: topOffset + 'px', + left: '0', + right: '0', + height: eventHeight + 'px', + '-webkit-line-clamp': 1, + 'line-clamp': 1 + } + }, hasOtherEvents(fullDate) { // 判断该日期是否有其他事件(包括跨天事件) const singleEvents = this.eventsForDate(fullDate) || []