分享一款前端報表控件ActiveReportsJS V2.0
自2019年第一個版本發布以來,ActiveReportsJS 純前端報表控件的每個新版本都觸動人心,不斷突破前端技術限制,為前端報表領域提供更多新的功能。近日發布的ActiveReportsJS V2.0 Update2 是2021年的第二個SP 版本,支持通過代碼動態創建報表,大幅提升了報表設計能力。
1. 在代碼運行時創建報表
眾所周知,ActiveReportsJS 的報表模板本質上是遵循既定規范的JSON 字符串,在V2.0 Update 2 之前,如果您想在運行時修改報表模板或者生成報表文件,需要了解報表的JSON 結構并且修改JSON 字符串。如果僅修改某一些節點的屬性值,此方法暫時可行,但對于動態構建表格或者矩表來說,整個工作會變得非常復雜。
作為專業的報表開發工具,為了讓開發人員用起來更加自由可控,ActiveReportsJS V2.0 Update 2開放了報表結構的 TypeScript 聲明,開發人員可以在Visual Studio Code 中根據智能提示功能,用代碼動態創建報表。

2. 更加易用的表達式編輯器
ActiveReports JS V2.0 Update 2版本中更新了表達式編輯器界面,比原來的版本,更加方便和易用。
舊版函數編輯器:函數全部列在左側,當您想看一下某個函數的使用方式時,無法通過查找,快速定位到該函數。
新版函數編輯器:將函數單獨分離出來,并且增加搜索功能,您能夠更快的搜索到該函數的使用方式,更加方便易用。
3. 引入 ES模塊
ES 模塊為使用Vite.js等工具的開發者提供了更高性能的應用開發能力。在ActiveReportsJS V2.0 Update2中,所有的npm包都開放了原生ES模塊,采用ES6本身支持的模塊化語法。這樣一來,只要瀏覽器支持ES6的模塊化,您就不用再費時間和精力去進行編譯和打包,可以讓項目工程體積更小、build更快。
4. 更豐富的圖表類型
ActiveReportsJS V2.0 Update 2 為大家帶來了新的圖表類型——雷達圖,共支持四種類型:
折線雷達圖面積雷達圖散點雷達圖氣泡雷達圖
5. 自適應表格寬度
根據實際業務場景的不同,使用“表格”控件展示數據時,您可能會需要根據用戶權限來控制每列的可見性。如:人力資源管理報表中薪資一欄,對高級決策者可見,對普通員工為隱藏。這個時候開發通常會使用 ActiveReportsJS提供的報表參數功能,接收用戶身份信息后,動態控制每列的可見性。但列隱藏后,頁面就會留下已隱藏列的空白,用戶觀感不佳。V2.0 Update2實現了自適應表格寬度功能,剩下的列可自動調整適寬,匹配紙張的寬度。
6. 靈活控制頁面報表每頁運行時可見性
頁面報表常用于創建制式報表,是對報表格式要求嚴格、布局要求精確的報表類型。頁面報表非常適合創建類似Word報告類的報表,因為其遵守了分頁的設計模式。然而創建報告類報表時,開發者往往需要根據數據結構動態創建。有些報表頁如果數據為空不顯示,如果有數據則顯示,從而實現動態批量生成Word報告。
ActiveReportsJS V2.0 Update 2 版本增強了頁面報表的頁可見性屬性設置,可動態控制每頁的可見性。該屬性非常好的解決了上述類Word報告動態生成的需求。
7. 增強富文本框控件-增加圖像標簽
在之前的版本中,ActiveReportsJS提供了富文本控件,支持在報表中渲染HTML 代碼、HTML字段。V2.0 Update 2持續增強了富文本的功能,為富文本控件增加了img標簽。
8. 矩表設計向導增加一鍵百分比計算
矩表,是中國式復雜報表的核心數據控件。ActiveReportsJS內置矩表設計向導,可創建中國式復雜報表、數據透視表、動態行列報表,深受開發者好評。V2.0 Update2對其易用性做了進一步提升,增加了一鍵快速計算組內及組外百分比功能。

我們從以下三個方面,對比純靜態和偽靜態兩種靜態頁面生成方式,逐一展開分析。
用JS的正則表達式如何判斷輸入框內為中文或者是英文數字,或者是三者混編
css制作扇形
純CSS3文字Loading動畫特效
PhpStorm 2022.1 EAP 3 在 PHPDoc 和屬性中添加了對多行和嵌套數組形狀的完全支持:在這種情況下,可以使用數組形狀注釋定義數組結構,以獲得鍵的代碼補全并推斷值的類型。
PHP作為Web界第一大語言近年來熱度不夠,但是這幾年的進步和成長卻沒有中斷。在2022伊始,我們來一起學習一下目前PHP的現狀以及最新版本帶來的特性。
Linux程序前臺后臺切換:在Linux終端運行命令的時候,在命令末尾加上 & 符號,就可以讓程序在后臺運行Ubuntu$">root@Ubuntu$ ./tcpserv01 &
Python 的正則表達式支持 多行模式,將每行文字分別匹配。然而各種操作系統里,換行符的表示法各不相同,會導致 Python 不能正確使用多行模式。