翻譯|產(chǎn)品更新|編輯:吉煒煒|2024-12-18 10:27:45.963|閱讀 106 次
概述:日程安排控件dhtmlxScheduler v7.2全新發(fā)布,新版本增強(qiáng)并增加了編輯、修改等多個(gè)操作體驗(yàn),歡迎下載最新版試用~
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
DHTMLX Scheduler是一個(gè)全面的 UI 組件,用于處理面向業(yè)務(wù)的 Web 應(yīng)用程序中復(fù)雜的調(diào)度和任務(wù)管理需求。
DHTMLX Scheduler 7.2現(xiàn)已全新發(fā)布!此更新將增強(qiáng)JS 調(diào)度庫的編碼體驗(yàn),并確保使用它構(gòu)建的日歷具有更高的可用性。在之前版本的堅(jiān)實(shí)基礎(chǔ)之上,v7.2 增加了針對重復(fù)事件的新編輯選項(xiàng)、修改了協(xié)作編輯,并增強(qiáng)了對日和周視圖中事件顯示的控制,歡迎下載體驗(yàn)!
以下是新版本的主要更新內(nèi)容:重復(fù)事件的新編輯選項(xiàng)
在 7.1 版中,我們引入了對定期事件的 RRULE 格式的支持,這與廣為接受的 RFC-5545 標(biāo)準(zhǔn)保持一致。DHTMLX Scheduler 7.2 進(jìn)一步擴(kuò)展了此功能,讓您可以無縫修改定期系列的各部分。
此功能默認(rèn)可用,無需額外配置。因此,最終用戶可以輕松同時(shí)編輯一組重復(fù)事件。只需指定一個(gè)特定事件,即可從中應(yīng)用重復(fù)系列中的更改。在用戶界面中,可以通過兩種方式完成:
此方法不需要對應(yīng)用程序的服務(wù)器端代碼進(jìn)行任何更改。
修改后的協(xié)同編輯實(shí)時(shí)更新模塊
在 v7.2 中,Scheduler 的協(xié)作功能達(dá)到了新的水平。我們的開發(fā)人員修改了實(shí)時(shí)更新模塊,提供跨多個(gè)用戶的實(shí)時(shí)同步和協(xié)作編輯。
新的實(shí)施方案為實(shí)時(shí)數(shù)據(jù)更新帶來了現(xiàn)代、高效的支持,確保一個(gè)最終用戶所做的更改立即被所有其他用戶看到。
用于實(shí)時(shí)更新的客戶端處理程序現(xiàn)已嵌入到 Scheduler 組件中。要啟用它,您只需在應(yīng)用中包含以下代碼:
const AUTH_TOKEN = "token"; scheduler.init('scheduler_here', new Date(2025, 3, 20), "week"); scheduler.load("/events"); const dp = scheduler.createDataProcessor({ url: "/events", mode: "REST-JSON", headers: { "Remote-Token": AUTH_TOKEN } }); const { RemoteEvents, remoteUpdates } = scheduler.ext.liveUpdates; const remoteEvents = new RemoteEvents("/api/v1", AUTH_TOKEN); remoteEvents.on(remoteUpdates);
實(shí)時(shí)協(xié)作功能需要兼容的后端實(shí)現(xiàn)。該實(shí)現(xiàn)使用統(tǒng)一的通信協(xié)議,可實(shí)現(xiàn)所有支持此功能的 DHTMLX 組件(如Scheduler、Gantt等)的實(shí)時(shí)更新。
改進(jìn)隔夜事件的顯示
這種方法不需要對應(yīng)用的服務(wù)器端代碼進(jìn)行任何更改。從現(xiàn)在開始,all_timed插件的某些功能將默認(rèn)啟用,使夜間事件的顯示更加清晰易懂。
在一天開始并在第二天結(jié)束的事件(持續(xù)時(shí)間少于 24 小時(shí))現(xiàn)在顯示在“日”和“周”視圖的主列中,而不是顯示在頂部的多日部分中。
可以通過將all_timed配置設(shè)置為false來 禁用新行為。
此外,我們還添加了新的 API 選項(xiàng),讓您可以更好地控制在多日部分和主列中顯示的事件。因此,您可以指定事件放置的標(biāo)準(zhǔn),確保您的 JavaScript 調(diào)度日歷以最適合您需求的方式顯示事件。
const { isMainAreaEvent } = scheduler.ext.allTimed; scheduler.ext.allTimed.isMainAreaEvent = function(event) { if(event.multidaySection){ return false; }else{ return isMainAreaEvent(event); } };
有了這個(gè)新功能,您可以獲得額外的靈活性,在各種場景中顯示預(yù)定的夜間事件,從而增強(qiáng)應(yīng)用程序的可用性。
其他改進(jìn)
非變異日期函數(shù)
scheduler.date .{unit}_start函數(shù)已更新,不再改變輸入日期。此更改可確保日期計(jì)算是純函數(shù),從而防止意外的副作用并使您的代碼更加可預(yù)測和可靠。
迷你日歷的新 API 事件
迷你日歷(日期選擇器)擴(kuò)展還有新的 API 事件,可以更好地控制用戶與此元素的交互。
const dateToStr = (date) => date ? scheduler.templates.format_date(date) : null; var calendar = scheduler.renderCalendar({ container: "cal_here", navigation: true, events: { onBeforeMonthChange: function(oldDate, newDate) { scheduler.message(`Before change from ${dateToStr(oldDate)} to ${dateToStr(newDate)}`); return true; }, onMonthChange: function(oldDate, newDate) { scheduler.message(`Changed from ${dateToStr(oldDate)} to ${dateToStr(newDate)}`); }, onDateClick: function(date, e) { scheduler.setCurrentView(date); scheduler.message(`Selected date ${dateToStr(date)}`); }, onDateMouseOver: function(date, e){ scheduler.message(`Mouse over ${dateToStr(date)}`) } } });
這一新穎的功能允許您在與日期選擇器交互時(shí)實(shí)現(xiàn)特定的行為。
以上便是v7.2版本更新的主要內(nèi)容。如您有產(chǎn)品試用下載、價(jià)格咨詢、優(yōu)惠獲取,或其他任何問題,請聯(lián)系。
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請郵件反饋至chenjj@ke049m.cn
文章轉(zhuǎn)載自:慧都網(wǎng)