反饋已提交

網絡繁忙

FVS頁面API

適用場景:安裝了「FineVis資料視覺化」插件的使用者,可參考本文了解 FineVis 的相關功能。

版本

報表伺服器版本插件版本功能變動
11.0V1.0.0最低版本要求
11.0.22V2.5.0

新增API getAllPages 

查看歷史版本更新:

報表伺服器版本插件版本功能變動
11.0.7
V1.8.0

支援API this,可獲取當前的組件物件,獲取後可以使用組件的方法和屬性

支援API getAllWidgets,可獲取當前頁所有組件

11.0.9V1.9.1refresh API支援傳參
11.0.9V1.14.1新增設定分頁切換按鈕顯隱狀態API setPageButtonDisplayPolicy 
11.0.16V1.18.0新增關閉頁面全螢幕API exitFullscreen
11.0.22V2.2.1新增全局傳參API linkageGlobal
11.0.22V2.4.0新增暫停繼續頁面切換API pauseRollPlay、continueRollPlay
11.0.22V2.4.1

FVS 統一範本分頁、表格組件分頁、Tab組件標籤頁相關 API 接

詳情請參見本文 獲取頁、操作頁 相關內容

相容說明

V2.4.1 版本對範本分頁、表格組件分頁、Tab組件標籤頁相關 API API進行了統一設計,新API的頁索引統一從 1 開始。

詳細說明參見表格:

類型
舊API新API
範本分頁

url 後綴參數 page=x ,x 從 0 開始

page=0 表示第一頁

url 後綴參數改為 page_number=x , x 從 1 開始

page_number=1 表示第一頁

表格分頁表格分頁索引從 1 開始,表示第一頁表格分頁索引從 1 開始,表示第一頁
Tab標籤頁標籤頁索引從 0 開始,表示第一頁標籤頁索引從 1 開始,表示第一頁

this

方法this獲取當前的組件物件,獲取後可以使用組件的方法和屬性
     參數--
   回傳值object 當前組件物件
     範例

範例1:獲取當前元件組件的實際值

this.getValue();

範例2:設定當前元件不可見

this.setVisible(false);

範例3:清空當前元件的值

this.reset();
  應用範例

-

    行動端支援行動端

getAllwidgets

方法getAllWidgets()

獲取當前頁面中所有組件物件,後續可以呼叫每個組件上的API加以使用

     參數--
   回傳值Array組件物件陣列
     範例

範例1:點選標題組件,一鍵隱藏當前頁所有組件

duchamp.getAllWidgets().forEach(widget => {
widget.setVisible(false);
})

範例2:在 FVS 範本中,獲取當前頁面總共有多少組件,並彈窗顯示

var a = duchamp.getAllWidgets().length;
duchamp.Msg.alert({
      title: "提示" ,
       message:"當前頁面總共有組件:"+ a +"個"
}
)


  應用範例

點選標題組件,獲取當前頁面總共有多少組件,並彈窗顯示

點選下載範本:獲取當前頁組件數量.fvs


   行動端支援行動端

getWidgetByName

方法getWidgetByName(name)獲取當前頁面中的某個組件
     參數name: string組件名稱,字串
   回傳值object 組件物件
     範例

範例:獲取標題組件

duchamp.getWidgetByName('標題組件1_頁面1');
  應用範例

-

    行動端支援行動端

refresh

方法refresh()觸發組件重新整理
     參數{para:"para"}參數名稱:參數值
   回傳值--
     範例

範例1:觸發「組件1」重新整理

duchamp.getWidgetByName("組件1").refresh();

範例2:觸發「柱形圖」組件重新整理並將地區華北作為參數傳遞給柱形圖

duchamp.getWidgetByName("柱形圖").refresh({area:"華北"});

注:給同一組件傳多個參數時,寫法如下

duchamp.getWidgetByName("組件").refresh({a:"參數值",b:"參數值"});
  應用範例

點選標題組件,觸發「柱形圖」組件重新整理並將地區華北作為參數傳遞給柱形圖

點選可下載範本:refresh重新整理組件.fvs

    行動端支援行動端

trigger

方法trigger()

觸發組件點選事件

注:不支援三維組件和元件組件

     參數-

注:在組合地圖中使用時,需傳遞參數:areaMap、pointMap 或 lineMap

   回傳值--
     範例

範例1:觸發「組件1」的所有點選事件

duchamp.getWidgetByName("組件1").trigger();

範例2:在組合地圖中

觸發「區域地圖」

duchamp.getWidgetByName("組合地圖1_頁面3").trigger("areaMap");

觸發「點地圖」

duchamp.getWidgetByName("組合地圖1_頁面3").trigger("pointMap");

觸發「流向地圖」

duchamp.getWidgetByName("組合地圖1_頁面3").trigger("lineMap");
  應用範例

-

    行動端支援行動端

requestFullscreen

方法requestFullscreen()觸發頁面全螢幕
     參數--
   回傳值--
     範例

範例:給標題組件新增點選 JavaScript 事件,觸發頁面全螢幕

duchamp.requestFullscreen();
  應用範例

-

    行動端不支援行動端

exitFullscreen

方法exitFullscreen()

關閉頁面全螢幕

注:僅針對 requestFullscreen API觸發的全螢幕,若使用按鍵 F11 觸發全螢幕,則該API無效

     參數--
   回傳值--
     範例

範例:給標題組件新增點選 JavaScript 事件,關閉頁面全螢幕

duchamp.exitFullscreen();
  應用範例

-

    行動端不支援行動端

reload

方法reload()觸發範本整體重新整理
     參數--
   回傳值--
     範例

每兩秒重新整理一次頁面

setInterval(() => {    duchamp.reload();  }, 2 * 1000);
  應用範例

V1.7.2 版本之前的插件,只能透過範本的「範本>頁面載入結束事件」寫 JavaScript 程式碼實現

V1.7.2 及之後版本,可透過「範本定時重新整理」功能設定,詳情請參見:FVS範本定時重新整理

    行動端支援行動端

setPageButtonDisplayPolicy

方法setPageButtonDisplayPolicy()設定多分頁範本左下角切換分頁按鈕是否顯示
     參數always/hover/never

切換按鈕的三種狀態(預設為 always):

  • always:永遠顯示

  • hover:滑鼠懸浮時顯示

  • never:從不顯示

   回傳值--
     範例

可新增以下程式碼在範本的「載入結束事件」中

範例1:設定切換按鈕永遠顯示

duchamp.setPageButtonDisplayPolicy("always");

範例2:設定切換按鈕隱藏,滑鼠懸浮時顯示

duchamp.setPageButtonDisplayPolicy("hover");

範例3:設定切換按鈕從不顯示

duchamp.setPageButtonDisplayPolicy("never");
  應用範例-
    行動端不支援行動端

linkageGlobal

方法linkageGlobal()參數全局聯動
     參數{para:"para"}參數名稱:參數值
   回傳值--
     範例

無需獲取多個參數元件分別指派,使用該API即可實現全局參數聯動,對所有分頁生效

範例:點選標題組件,將「華北」作為參數值,傳遞給範本內所有使用了參數 area 的組件

duchamp.linkageGlobal({area:"華北"})

注:傳遞多個參數時,寫法如下

duchamp.linkageGlobal({a:"參數值",b:"參數值"});
  應用範例

點選下載範本:參數全局聯動API範例.fvs

    行動端支援行動端

pauseRollPlay

方法pauseRollPlay()暫停頁面自動切換
     參數--
   回傳值--
     範例

多分頁範本開啟自動切換頁面時,暫停頁面自動切換

duchamp.pauseRollPlay();
  應用範例

點選下載範本:JS實現暫停繼續頁面切換.fvs

    行動端不支援行動端

continueRollPlay

方法continueRollPlay()繼續頁面自動切換
     參數--
   回傳值--
     範例

多分頁範本開啟自動切換頁面時,暫停頁面自動切換後,繼續頁面自動切換

duchamp.continueRollPlay();
  應用範例

點選下載範本:JS實現暫停繼續頁面切換.fvs

    行動端不支援行動端

注:以下獲取頁及操作頁API需使用 V2.4.1 及之後版本,V2.4.1 之前版本API請參考 歷史API 。

獲取頁

getPage

方法getPage()獲取頁
     參數value:page_number|name

根據頁索引或頁名稱獲取頁

page_number:頁索引,從 1 開始的正整數

name:頁名稱,字串

   回傳值
  setVisible: (visible: boolean) => void,
  goto: (options?: { [key: string]: string }) => void,
  getName: () => string,
  getIndex: () => number,
  isVisible: () => boolean,
}

{

visible:可見性

options:跳轉的頁面物件

name:頁面名稱

number:頁面索引,從 1 開始的正整數

}

     範例

範例1:在 FVS 範本中,獲取「頁面1

duchamp.getPage("頁面1");

範例2:在 FVS 範本中,「表格1」組件設定了分頁,獲取「表格1」組件的分頁1

duchamp.getWidgetByName('表格1').getPage(1);

範例3:在 FVS 範本中,獲取「Tab1」組件第一個標籤頁

duchamp.getWidgetByName('Tab1').getPage(1);
  應用範例

-

    行動端支援行動端

getPreviousPage

方法getPreviousPage()獲取上一頁
     參數-

-

   回傳值
  setVisible: (visible: boolean) => void,
  goto: (options?: { [key: string]: string }) => void,
  getName: () => string,
  getIndex: () => number,
  isVisible: () => boolean,
}

{

visible:可見性

options:跳轉的頁面物件

name:頁面名稱

number:頁面索引,從 1 開始的正整數

}

     範例

範例1:在 FVS 範本中,獲取當前頁的上一頁

duchamp.getPreviousPage();

範例2:在 FVS 範本中,「表格1」組件設定了分頁,獲取「表格1」組件當前頁的上一頁

duchamp.getWidgetByName('表格1').getPreviousPage();

範例3:在 FVS 範本中,獲取「Tab1」組件當前頁的上一頁

duchamp.getWidgetByName('Tab1').getPreviousPage();
  應用範例-
    行動端支援行動端

getNextPage

方法getNextPage()獲取下一頁
     參數-

-

   回傳值
  setVisible: (visible: boolean) => void,
  goto: (options?: { [key: string]: string }) => void,
  getName: () => string,
  getIndex: () => number,
  isVisible: () => boolean,
}

{

visible:可見性

options:跳轉的頁面物件

name:頁面名稱

number:頁面索引,從 1 開始的正整數

}

     範例

範例1:在 FVS 範本中,獲取當前頁的一頁

duchamp.getNextPage();

範例2:在 FVS 範本中,「表格1」組件設定了分頁,獲取「表格1」組件當前頁的一頁

duchamp.getWidgetByName('表格1').getNextPage();

範例3:在 FVS 範本中,獲取「Tab1」組件當前頁的一頁

duchamp.getWidgetByName('Tab1').getNextPage();
  應用範例-
    行動端支援行動端

getFirstPage

方法getFirstPage()獲取第一頁
     參數-

-

   回傳值
  setVisible: (visible: boolean) => void,
  goto: (options?: { [key: string]: string }) => void,
  getName: () => string,
  getIndex: () => number,
  isVisible: () => boolean,
}

{

visible:可見性

options:跳轉的頁面物件

name:頁面名稱

number:頁面索引,從 1 開始的正整數

}

     範例

範例1:在 FVS 範本中,獲取範本的第一頁

duchamp.getFirstPage();

範例2:在 FVS 範本中,「表格1」組件設定了分頁,獲取「表格1」組件第一頁

duchamp.getWidgetByName('表格1').getFirstPage();

範例3:在 FVS 範本中,獲取「Tab1」組件第一頁

duchamp.getWidgetByName('Tab1').getFirstPage();
  應用範例-
    行動端支援行動端

getLastPage

方法getLastPage()獲取最後一頁
     參數-

-

   回傳值
  setVisible: (visible: boolean) => void,
  goto: (options?: { [key: string]: string }) => void,
  getName: () => string,
  getIndex: () => number,
  isVisible: () => boolean,
}

{

visible:可見性

options:跳轉的頁面物件

name:頁面名稱

number:頁面索引,從 1 開始的正整數

}

     範例

範例1:在 FVS 範本中,獲取範本的最後一頁

duchamp.getLastPage();

範例2:在 FVS 範本中,「表格1」組件設定了分頁,獲取「表格1」組件最後一頁

duchamp.getWidgetByName('表格1').getLastPage();

範例3:在 FVS 範本中,獲取「Tab1」組件最後一頁

duchamp.getWidgetByName('Tab1').getLastPage();
  應用範例-
    行動端支援行動端

getCurrentPage

方法getCurrentPage()獲取當前頁
     參數-

-

   回傳值
  setVisible: (visible: boolean) => void,
  goto: (options?: { [key: string]: string }) => void,
  getName: () => string,
  getIndex: () => number,
  isVisible: () => boolean,
}

{

visible:可見性

options:跳轉的頁面物件

name:頁面名稱

number:頁面索引,從 1 開始的正整數

}

     範例

範例1:在 FVS 範本中,獲取範本展示的當前

duchamp.getCurrentPage();

範例2:在 FVS 範本中,「表格1」組件設定了分頁,獲取「表格1」組件當前頁

duchamp.getWidgetByName('表格1').getCurrentPage();

範例3:在 FVS 範本中,獲取「Tab1」組件當前頁

duchamp.getWidgetByName('Tab1').getCurrentPage();
  應用範例-
    行動端支援行動端

getAllPages

注:該API需使用 V2.5.0 及之後版本。

方法getAllPages()獲取所有頁
     參數-

-

   回傳值page[x]

頁面陣列,x 從 0 開始,0 表示第一頁

注:這裏與頁面索引不一樣,頁面索引從 1 開始

     範例

範例1:在 FVS 範本中,獲取範本總共有多少頁,並彈窗顯示

var a = duchamp.getAllPages().length;
duchamp.Msg.alert({
      title: "提示" ,
       message:"當前範本總頁數為:"+ a
}
)

範例2:在 FVS 範本中,「表格1」組件設定了分頁,獲取「表格1」組件第二頁的名稱

duchamp.getWidgetByName('表格1').getAllPages()[1].getName();

範例3:在 FVS 範本中,獲取「Tab1」組件第一頁的索引

duchamp.getWidgetByName('Tab1').getAllPages()[0].getIndex();
  應用範例

點選下載範本FVS獲取範本總頁數.fvs

    行動端支援行動端

操作頁

以下API需結合獲取頁API使用

setVisible

方法setVisible()

設定頁面顯示或隱

注:若隱藏正在展示的頁面,會彈出提示「無法隱藏當前頁」

     參數visible: boolean

頁面是否顯示,布林型

  • true:顯示

  • false:隱

   回傳值--
     範例

範例1:在 FVS 範本中,隱藏範本「頁面1」

duchamp.getPage("頁面1").setVisible(false);

範例2:在 FVS 範本中,「表格1」組件設定了分頁,隱藏表格分頁1

duchamp.getWidgetByName('表格1').getPage(1).setVisible(false);

範例3:在 FVS 範本中,隱藏「Tab1」組件標籤頁1

duchamp.getWidgetByName('Tab1').getPage(1).setVisible(false);
  應用範例

點選下載範本:FVS設定頁面顯示或隱藏.fvs

    行動端支援行動端

isVisible

方法isVisible()獲取頁面顯示/隱藏狀態
     參數--
   回傳值visible: boolean

頁面是否顯示,布林型

  • true:顯示

  • false:隱

     範例

範例1:在 FVS 範本中,獲取「頁面2」,傳回其顯示隱藏狀態並彈窗提示

var a = duchamp.getPage("頁面2").isVisible();
duchamp.Msg.alert({
      title: "提示" ,
       message:"頁面2顯隱狀態為 "+ a
}
)

範例2:在 FVS 範本中,「表格1」組件設定了分頁,獲取表格分頁2,傳回其顯隱狀態

duchamp.getWidgetByName('表格1').getPage(2).isVisible();

範例3:在 FVS 範本中,獲取「Tab1」組件標籤頁2,傳回其顯隱狀態

duchamp.getWidgetByName('Tab1').getPage(2).isVisible();
  應用範例

點選下載範本FVS獲取頁面顯隱狀態.fvs

    行動端支援行動端

goto

方法goto()跳轉到獲取的頁面
     參數{para:"para"}參數名:參數值
   回傳值--
     範例

範例1:在 FVS 範本中,跳轉到下一頁

duchamp.getNextPage().goto();

範例2:在 FVS 範本中,「表格1」組件設定了分頁,跳轉表格下一頁

duchamp.getWidgetByName('表格1').getNextPage().goto();

範例3:在 FVS 範本中,跳轉「Tab1」組件下一頁

duchamp.getWidgetByName('Tab1').getNextPage().goto();

範例4:在 FVS 範本中,跳轉到下一頁並傳參

duchamp.getNextPage().goto({a:"參數a"});

傳遞多個參數寫法如下:

duchamp.getNextPage().goto({a:"參數a",b:"參數b"});
  應用範例

點選下載範本FVS頁面跳轉.fvs


    行動端支援行動端

getName

方法getName()獲取頁面名稱
     參數--
   回傳值name:string頁面名稱,字串
     範例

範例1:在 FVS 範本中,獲取當前頁面名稱並彈窗顯示

var name = duchamp.getCurrentPage().getName();
duchamp.Msg.alert({
      title: "提示" ,
      message:"當前頁面名稱為 "+ name
}
)

範例2:在 FVS 範本中,獲取「Tab1」組件當前頁面名稱並彈窗顯示

var name = duchamp.getWidgetByName('Tab1').getCurrentPage().getName();
duchamp.Msg.alert({
      title: "提示" ,
      message:"當前頁面名稱為 "+ name
}
)

注:表格組件分頁沒有名稱,若使用上述 JS ,回傳值為 undefined

  應用範例

點選下載範本:FVS獲取頁面名稱.fvs

    行動端支援行動端

getIndex

方法getIndex()獲取頁面索引
     參數--
   回傳值number頁面索引,從 1 開始的正整數
     範例

範例1:在 FVS 範本中,獲取當前頁面索引並彈窗顯示

var number = duchamp.getCurrentPage().getIndex();
duchamp.Msg.alert({
      title: "提示" ,
      message:"當前頁面名稱為 "+ number
}
)

範例2:在 FVS 範本中,獲取「表格1」組件當前頁面索引並彈窗顯示

var number = duchamp.getWidgetByName('表格1').getCurrentPage().getIndex();
duchamp.Msg.alert({
      title: "提示" ,
      message:"表格當前頁面索引為 "+ number
}
)

範例3:在 FVS 範本中,獲取「Tab1」組件當前頁面索引並彈窗顯示

var number = duchamp.getWidgetByName('Tab1').getCurrentPage().getIndex();
duchamp.Msg.alert({
      title: "提示" ,
      message:"Tab當前頁面索引為 "+ number
}
)
  應用範例

點選下載範本:FVS獲取頁面索引.fvs

    行動端支援行動端


附件列表


主題: 二次開發
  • 有幫助
  • 沒幫助
  • 只是瀏覽
  • 圖片不清晰
  • 用語看不懂
  • 功能說明看不懂
  • 操作說明太簡單
  • 內容有錯誤
中文(繁體)

滑鼠選中內容,快速回饋問題

滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。

不再提示

10s後關閉

獲取幫助
線上支援
獲取專業技術支援,快速幫助您解決問題
工作日9:00-12:00,13:30-17:30在线
頁面反饋
針對當前網頁的建議、問題反饋
售前咨詢
業務咨詢
電話:0933-790886或 0989-092892
郵箱:taiwan@fanruan.com
頁面反饋
*問題分類
不能為空
問題描述
0/1000
不能為空

反馈已提交

网络繁忙