從 SAP Fiori Elements 實現原始碼中的 SmartTable.xml 能看出,ListReport 型別的 SAP Fiori Elements 應用,其表格型別包含 4 種:
- AnalyticalTable
- TreeTable
- GridTable
- ResponsiveTable
這些表格型別,執行時是如何計算出來的?
在 preparationHelper.js 的 getNormalizedTableSettings 裡能找到答案。
預設的 table 設定的欄位 tableType, 如果 gridTable 或者 treeTable 不為空,則表格型別為對應的 GridTable 或者 TreeTable.
根據 entity type 的字串名稱,拿到對應的 entity type json 物件:
HeaderInfo:表頭資訊
預設選擇型別是:SingleSelectLeft
此處可見,如果 OData entity type 的 sap:semantics 值為 aggregate,則 table 型別為 AnalyticalTable, 否則為 ResponsiveTable.
更多Jerry的原創文章,盡在:"汪子熙":