WijmoJS - V2024.0 Update1?新特性
Wijmo2024V1已經發布。此版本包括了 FlexGrid、FlexChart 等主要控件的功能增強。以及對新框架 Next.js 和 Nuxt.js的支持、對Angular 18的支持
FlexGrid 和 FlexGridFilter 功能增強
FlexGrid 在每個版本中都不斷改進。此版本包括對粘貼、分組、聚合等功能的改進。
FlexGridFilter現在支持通配符過濾,并在添加或刪除行時模仿 Excel 行為
另一個常見需求是希望對初始焦點有更多控制。例如,當 Wijmo 組件獲得焦點時,有些客戶希望指定組件的哪個部分獲得焦點。
為了提供這種控制,我們引入了一個名為 focusFirst 的新實用程序。這是一個通用解決方案,適用于所有 Wijmo 組件以及任何其他 DOM 元素。
FlexGrid 的篩選對話框中就有一個例子。默認焦點在搜索框上。
但是,假如一位客戶希望將焦點放在“升序”按鈕上,以遵循更嚴格的可訪問性準則。可以使用 focusFirst輕松地將過濾器對話框中的初始焦點設置為“升序”按鈕。
此外還包括下面的功能增強:
- DataMap 新增菜單編輯器類型
- 一些用于綁定鍵/值對的新 API。
- 通過添加 mergedRange 屬性來獲取單擊單元格的合并狀態,從而改進了 HitTestInfo。
- 添加了在列組標題上設置的 cssClassAll屬性。
FlexChart 和 FlexPie 功能增強
FlexChart 在此版本中優化了渲染性能和效果。包括折線和多邊形的圓角處理更加平滑、平滑曲線插值得到改進,以及 更好的FlexPie 切片的工具提示。
我們添加了在 FlexChart 文本中呈現 HTML 的功能。現在,您可以在 FlexChart 中設置htmlText選項并在圖表中的文本(標簽、圖例等)內呈現 HTML 元素。
日期和時間輸入功能增強
更新所有日期和時間輸入組件,以支持更好地通過鍵盤導航日期和時間部分。現在,您可以使用向上和向下箭頭鍵來增加或減少日期和時間對象的每個部分。
工具提示可訪問性功能增強
現在,只要鼠標停留在工具提示上,工具提示就會保持可見,按 ESC 鍵將關閉工具提示。
Angular 18 支持
Wijmo 已經完全支持 Angular 18。我們在 Angular 方面有著悠久的支持傳統,包括對標記的支持,例如在 FlexGrid 中的單元格模板中使用。
新的 Next.js 支持
Next.js 是一個功能強大的 React 框架,它為構建現代 Web 應用程序提供了一個強大的平臺。我們很高興宣布 Next.js 應用程序正式支持 Wijmo。
Wijmo 的 React Interop 可讓您在 Next.js 項目中使用 Wijmo 控件。互操作充當 Wijmo 控件的包裝器,創建和管理底層控件實例,同時通過 ref 屬性提供引用。此設置允許您以聲明方式綁定到控件屬性和事件,與您的 React 組件無縫集成。
為了在 Next.js 應用程序中成功使用 Wijmo 組件,您需要確保這些組件僅在客戶端呈現,因為不支持服務器端渲染(SSR)。
新的 Nuxt.js 支持
Nuxt.js 是一個基于 Vue.js 構建的強大框架,可用于開發通用的服務器渲染 Web 應用程序。我們很高興地宣布,Nuxt.js 應用程序正式支持 Wijmo。
適用于 Vue2 的 Wijmo 組件允許您在 Nuxt.js 項目中使用 Wijmo 控件。Wijmo Vue2 組件是 Wijmo 控件的包裝器,它在后臺創建 Wijmo 控件并通過 ref 屬性提供對控件實例的引用,允許您以聲明方式綁定到控件屬性和事件。
支持React強類型
我們已將 React 互操作性改為強類型,從而改進了它。現在,React 組件將使用更多類型(以前是任意類型)來幫助防止開發期間出現錯誤。
注意:React TypeScript 用戶可能會因這些更改而在其應用中彈出類型錯誤。請參閱下面的重大更改部分。
支持計劃變更
- Wijmo AngularJS 支持終止公告:自 2022 年 1 月起,AngularJS 已不再受支持。因此,Wijmo 計劃停止支持 AngularJS。在我們的 2024v2 版本中,我們將不再為 Wijmo 發布 AngularJS 互操作。我們鼓勵您使用 Wijmo 完全支持的Angular 版本。
- Wijmo KnockoutJS 支持終止公告:KnockoutJS 自 2019 年以來一直未更新或發布。因此,Wijmo 計劃停止支持 KnockoutJS。在我們的 2024v2 版本(2024 年 9 月)中,我們將不再為 Wijmo 發布 KnockoutJS 互操作。我們鼓勵您使用 Wijmo 完全支持的現代框架,例如 Angular、React 或 Vue。
注意事項
- [React] 如果依賴非自關閉的 JSX 組件,使用 React 互操作的 TypeScript 項目可能會遇到與 JSX 語法相關的編譯錯誤。React interop 現在是嚴格類型化的,因此根據構建設置,類型錯誤可能會阻止項目構建,直到所有錯誤都得到解決。大多數情況下,類型錯誤很容易修復。我們只需要為屬性分配正確的類型。
- [React][TreeView][Accordion] 由于引入了包裝 元素,TabPanel 和 Accordion 組件可能會出現布局不一致或意外樣式的問題。React interop 用于 Tab 和 AccordionPane 組件,以前提供的 HTML 內容直接添加到控件主體中,現在則包裹在 div 元素內。
- [FlexGrid] 在列上設置時,cssClass 和 cssClassAll 不適用于列組標題。此更改會影響 Column 的 cssClassAll 屬性的功能。它將為用戶提供更精細的設置和控制,以設置列組標題的樣式。最后,cssClass屬性僅適用于數據單元,保持與 5.20232.939 及更早版本相同的功能。
歷史版本
查看更多關于 WijmoJS 歷史版本。