全部產品
Search
文件中心

DataV:使用全域變數

更新時間:Nov 19, 2024

本文檔介紹全域變數的4種用法,作為靜態值傳遞作為變數引用非同步值傳遞作為互動事件參數傳遞過濾器引用

說明

全域變數功能為7.0版本產品新增功能,請根據新版控制台環境進行操作。

前提條件

  • 已登入DataV控制台

  • 已進入畫布編輯器

  • 已建立兩個全域變數var_1var_2

作為靜態值傳遞

  1. 畫布編輯器頁面,單擊全域變數頁簽。

  2. 單擊var_1變數,修改來源靜態值

  3. 修改初始值內容為hello

  4. 重新整理資料響應結果後的image表徵圖。

  5. 等待系統反應後,查看響應結果為修改後的內容:hello

作為變數引用非同步值傳遞

  1. 畫布編輯器頁面,單擊全域變數頁簽。

  2. 單擊var_1變數,修改初始值datav-hello

  3. 單擊var_2變數,修改來源資料來源請求

    • 若選擇資料類型API,則使用以下步驟。

      1. 設定請求方式GET,輸入URLhttps://datav.com/:var_1

        說明

        此處URL是資料類型為API時的類比地址,不具備真實訪問性,具體請以實際使用為準。

      2. 鍵盤上使用F12功能鍵開啟調測面板。

      3. 切換至Network頁簽

      4. 重新整理資料響應結果後的image表徵圖。

      5. 再次查看Network頁簽下的Name欄位,尋找對應右側Headers頁簽下的Request URL是否為multiple介面。image

      6. 查看當前介面Payload頁簽的query > api結果為var_1變數的設定值。image

    • 若選擇資料類型相容MySQL資料庫,則使用以下步驟。

      1. 選擇已有資料來源。也可以重新建立資料來源,詳情請參見資料來源管理。

      2. 輸入以下SQL運算式。

        select var_1 as value
      3. 重新整理資料響應結果後的image表徵圖,查看響應結果。

說明
  • 如果您的資料來源類型待用資料或者CSV檔案,則不支援全域變數的使用。

  • 對於API資料來源,系統會直接為同名的變數參數賦值。

  • DataV提供了全域變數自動補全功能。在配置資料來源時,只要鍵入英文冒號:,編輯器將提示當前螢幕下所有配置過的變數名稱。您可以使用上下鍵選擇某個變數名稱,完成後按Enter鍵確定。當螢幕中有大量互動組件的時候,這個功能可以協助您方便快速地使用全域變數。

image

作為互動事件參數傳遞

  1. 畫布編輯器頁面,單擊上方快捷搜尋框。

  2. 輸入按鈕通用標題,將兩個組件添加到畫布中。image

  3. 選擇按鈕組件,單擊右側配置設定面板的進階頁簽。

  4. 開啟互動事件模組下的點擊按鈕時開關。

  5. 更新至變數欄位下選擇全域變數var_1image

  6. 切換至藍圖編輯器,可以看到,全域變數與按鈕組件是自動虛線串連,且展示了兩個全域變數的參考關聯性。

    說明

    去掉全域變數的參考關聯性後,藍圖中的虛線會自動刪除。

    image

  7. 在左側導覽列中選擇圖層節點頁簽,將通用標題拖拽到藍圖中。

  8. 可以看出全域變數var_2通用標題串連為實線。image

    說明

    實線可以刪除,虛線不可以刪除。

  9. 您可以添加邏輯節點邏輯組合,對擷取的資料做進一步處理。

過濾器引用

說明

新版DataV服務中的getCallbackValuegetLocalValue的資料擷取效果一樣,為了相容舊版DataV服務,保留了getLocalValue,建議您優先使用getCallbackValue

  1. 畫布編輯器頁面,單擊上方快捷搜尋框。

  2. 輸入按鈕通用標題,將兩個組件添加到畫布中。重複操作再次擷取按鈕和通用標題組件。image

  3. 單擊按鈕組件,分別修改兩個按鈕的組件名稱為getLocalValue擷取按鈕getCallbackValue擷取按鈕

  4. 單擊通用標題組件,分別修改兩個通用標題的組件名稱為通用標題-1通用標題-2

  5. 選擇全域變數頁簽,新增兩個全域變數,取名為nametest。並分別設定靜態值。

    • name變數

      [
        {
          "value": "擷取到name變數啦。"
        }
      ]
    • test變數

      [
        {
          "value": "擷取到test變數啦。"
        }
      ]
  6. 分別設定兩個按鈕的文字內容為點擊通過getLocalValue擷取test點擊通過getCallBackValue擷取nameimage

  7. 單擊頁面左上方的image表徵圖,進入藍圖編輯器。

  8. 串連組件。image

  9. 添加過濾器,設定串列資料處理節點處理方法。

    • getLocalValue

      return getLocalValue('test');
    • getCallbackValue

      return getCallbackValue('name');
  10. 單擊頁面右上方的預覽,查看資料擷取詳情。回到哦_Trim

常見問題

Q:在畫布編輯頁面,配置了全域變數後,無法擷取傳回值,導致資料查詢失敗怎麼辦?

A:畫布編輯頁面無法觸發事件,擷取傳回值,因此請求失敗。您可以選擇以下兩種方式,查看請求的傳回值:

  • 預覽頁面查看。在瀏覽器控制台Network中查看請求的傳回值,或者直接通過組件顯示方式查看。

  • 編輯頁面查看。在可視化應用URL後添加測試參數來測試資料,添加方式如下。

    https://datav.aliyun.com/v/editor/216?參數名=參數值