資料看板的互動事件讓組件間有了互動,協助使用者更直觀便捷地進行資料探查和分析。本文介紹組件進階面板下的互動事件和關聯全域變數功能。
使用情境
沒有互動時,組件之間是獨立的個體,無法進行組件的聯動。當您需要如下類似情境時,您可使用組件互動配置增強資料看板能力。
點擊開關,控製圖層顯示隱藏;
點擊TAB標籤,展示不同含義下的資料;
點擊不同地圖地區,透視表僅展示所點擊省份的詳細資料;
通過時間選取器選擇時間,查看不同時間點的銷量資料;
總之,當您希望控制展示資料看板的內容時,您需要組件的進階配置以實現組件間的互動。
相關概念
互動事件
事件是使用者或瀏覽器在網頁上發生的某種行為,比如點擊、滑鼠移動、鍵盤按下、請求資料完成等。事件可以被監聽,當事件發生時,可以觸發某些代碼來執行特定的操作。這些行為本身不做任何事情,它們只是一個訊號,表示某個特定的時刻發生了一些事情。
互動動作
動作是指在事件發生時,組件所作出的響應。例如,當使用者點擊按鈕(事件),圖表顯示(動作)。
兩者關係
兩者為觸發與響應的關係,事件是觸發器,動作是響應。事件發生時,動作隨之執行。
動作觸發條件
觸發條件是事件和動作之間的一個判斷條件。若設定了動作觸發條件時,事件觸發且滿足動作觸發條件時,動作才會執行。
原理說明
組件的互動配置原理是使用者主動觸發互動事件,當系統判斷滿足動作觸發條件時,接收對象即會響應事件,作出預期的互動動作;若不滿意動作觸發條件,則自動結束。使用者也可不設定動作觸發條件,接收對象將直接執行互動動作。
例如,點擊Tab列表的第一個Tab時,柱狀圖組件顯示,整體原理如下。
操作流程
選擇資料看板中的組件(即觸發對象),在組件的進階面板下配置互動事件、動作觸發條件、互動動作、接收對象,即可完成互動事件的配置。可選擇全域變數作為接收對象,實現全域變數的更新。
接收對象支援圖層組件和全域變數。
前提條件
互動事件
組件間的互動
下面以點擊Tab顯示或隱藏柱狀圖為例,示範用互動事件實現組件間的互動。

組件中的關係如下:
添加柱狀圖組件和Tab列表組件(在下)到畫布中。

選中Tab列表組件後,修改Tab列表的資料來源,將Tab改成顯示和隱藏。

給Tab列表點擊添加顯示互動事件:當點擊Tab的ID為1時,柱狀圖響應顯示動作。
選中Tab列表,選擇右側進階面板,單擊互動事件右側的
表徵圖,給Tab點擊添加互動事件。啟用事件開關預設開啟。選擇事件類型,添加當點擊Tab時事件。
說明單擊事件右側的
表徵圖,可以查看當前事件的出參說明。單擊
表徵圖,開啟動作觸發條件開關。單擊新增條件,設定條件配置項當
id等於1,即當點擊的Tab是第一個Tab時。詳細使用方法請參見條件樹使用說明。
說明您也可以切換至代碼編輯模式,使用JavaScript文法進行配置。
單擊互動動作右側的
表徵圖,添加一個互動動作。選擇需要響應的組件和動作,設定為柱狀圖的顯示。
說明單擊
表徵圖,跳轉至藍圖查看互動動作。單擊
表徵圖,查看當前動作的入參說明。不同的動作互動動作的配置不同,請以實際為準。
同理,再給Tab列表添加一個互動事件:當點擊Tab的ID為2時,柱狀圖響應隱藏動作。

單擊右上方預覽,進行預覽效果查看。點擊顯示Tab,柱狀圖則顯示;點擊隱藏Tab,柱狀圖則隱藏。
單擊頁面左上方的
表徵圖,進入藍圖編輯器。查看系統自動產生的互動關係。即單路判斷節點的條件為動作觸發條件內容。
(可選)您也可以在自動邏輯關係的基礎上修改觸發條件、響應動作和對應的過濾器,當此處的配置變化時,相對應的進階面板的配置項也會變化。
說明當您需要較複雜的互動時,請在藍圖編輯器中進行設定。
組件和全域變數的互動
下面以通用標題組件展示點擊Tab列表組件的內容為例,示範用互動事件實現組件和全域變數的互動。通用標題的作用是直觀展示全域變數的變化。
您也可以使用藍圖編輯器實現該互動情境,詳細操作請參見案例示範。

三者的關係圖如下:
在全域變數中添加一個名為
content的全域變數。
添加Tab列表組件(在下)和通用標題組件到畫布中。

選中通用標題組件,在右側資料來源面板,關聯上全域變數
content。並設定過濾器,將content處理成正確的格式傳給組件。
// data入參表示content變數傳入的值,經過過濾器處理後,給組件正確的格式。 function filter(data) { return [{ value: data }]; }給Tab列表組件添加互動事件,觸發全域變數
content的值變化。選中Tab列表組件,選擇右側進階面板,單擊互動事件右側的
表徵圖,給Tab點擊添加互動事件。啟用事件開關預設開啟。選擇事件類型,添加當點擊Tab時事件。
說明單擊事件右側的
表徵圖,可以查看當前事件的出參說明。單擊互動動作右側的
表徵圖,添加一個互動動作。選擇需要響應的對象為全域變數
content,動作為匯入資料。
參數配置切換至動態參數配置,建立過濾器,添加代碼如下。將Tab點擊拋出的結果進行處理,返回的值就匯入給全域變數
content。// 經過過濾器處理後,擷取全域變數最終需要的值。 function filter(data) { return data.content; }
單擊右上方預覽,進行預覽效果查看。點擊不同Tab,通用標題顯示點擊Tab的內容。
關聯全域變數(不推薦使用)
常見問題
當我配置完進階互動後,切換到藍圖編輯器發現有些連線無法刪除。
互動中關聯全域變數的設定,無法在藍圖編輯器刪除。需要您在進階面板中關閉。



