最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

G6?TreeGraph樹圖節(jié)點懶加載使用場景示例

 更新時間:2023年10月27日 09:15:41   作者:fuGUI  
這篇文章主要為大家介紹了G6?TreeGraph樹圖節(jié)點懶加載使用場景示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪

場景

最近在使用G6 TreeGrap展示樹形結構數據的時候,由于節(jié)點數量比較多,導致頁面卡頓,甚至崩潰,最后不得不考慮懶加載的形式加載節(jié)點,每次點擊節(jié)點動態(tài)的增加子級節(jié)點。

實現代碼

graph.changeData(data, stack)

更新數據源,根據新的數據重新渲染視圖。

參數

名稱類型是否必選描述
dataObjectfalse圖數據,是一個包括 nodes 和 edges 的對象。若不指定該參數,則使用當前數據重新渲染
stackbooleanfalse操作是否入 undo & redo 棧,當實例化 Graph 時設置 enableStack 為 true 時,默認情況下會自動入棧,入棧以后,就支持 undo & redo 操作,如果不需要,則設置該參數為 false 即可

用法

const data = {
  nodes: [
    {
      id: 'node1',
      label: 'node1',
    },
    {
      id: 'node2',
      label: 'node2',
    },
  ],
  edges: [
    {
      source: 'node1',
      target: 'node2',
    },
  ],
};
// graph是Graph的實例
graph.changeData(data);
// 若不指定該參數,則使用當前圖上的數據重新渲染
graph.changeData();

通過對當前節(jié)點的children賦值然后調用graph.changeData()方法即可

// .....
// 節(jié)點點擊事件
graph.on("node:click", function (evt) {
        const item = evt.item;
        const nodeId = item.get("id");
        console.log(nodeId);
        const model = item.getModel();
        const children = model.children;
        if (!children || children.length === 0) {
          //點擊節(jié)點獲取下級節(jié)點接口
          //...........
          const parentData = graph.findDataById(nodeId);
          if (!parentData.children) {
            parentData.children = [];
          }
          // 如果childData是一個數組,則直接賦值給parentData.children
          // 如果是一個對象,則使用parentData.children.push(obj)
          parentData.children = childData;
          graph.changeData();
        }
      });

以上就是G6 TreeGraph樹圖節(jié)點懶加載的詳細內容,更多關于G6 TreeGraph樹圖節(jié)點懶加載的資料請關注腳本之家其它相關文章!

相關文章

  • uniapp中實現canvas超出屏幕滾動查看功能

    uniapp中實現canvas超出屏幕滾動查看功能

    親愛的小伙伴,當你需要在uniapp中使用canvas繪制一個超長圖,就類似于橫向的流程圖時,這個canvas超出屏幕部分拖動屏幕查看會變得十分棘手,怎么解決這個問題呢,下面小編給大家介紹uniapp中實現canvas超出屏幕滾動查看功能,感興趣的朋友一起看看吧
    2024-03-03
  • JS 獲取鼠標左右鍵的鍵值方法

    JS 獲取鼠標左右鍵的鍵值方法

    這篇文章主要介紹了JS 獲取鼠標左右鍵的鍵值方法,很簡單,但很實用,特別是在做與用戶交互相關的東西
    2014-10-10
  • Bootstrap常用組件學習(整理)

    Bootstrap常用組件學習(整理)

    這篇文章是小編日常收集整理的有關bootstrap?常用組件包括Bootstrap?面板(Panels),Bootstrap?多媒體對象(Media?Object)知識,非常不錯,需要的朋友參考下吧
    2017-03-03
  • 微信小程序實現利息計算器

    微信小程序實現利息計算器

    這篇文章主要為大家詳細介紹了微信小程序實現利息計算器,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-09-09
  • JS調試必備的5個debug技巧

    JS調試必備的5個debug技巧

    我一直使用printf調試程序,一般來說都是比較順利,但有時候,你會發(fā)現需要更好的方法。下面幾個JavaScript技巧相信你一定會覺得十分有用
    2014-03-03
  • js實現tab欄切換效果

    js實現tab欄切換效果

    這篇文章主要為大家詳細介紹了js實現tab欄切換效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-08-08
  • 一文解析JS如何準確獲取對象自身的屬性

    一文解析JS如何準確獲取對象自身的屬性

    在 JavaScript 開發(fā)中,我們經常需要遍歷對象的屬性,本文將深入講解如何準確獲取對象非原型鏈上的屬性(即“自身屬性”),并結合你提供的代碼,給出最佳實踐,有需要的可以了解下
    2025-09-09
  • 前端學習筆記style,currentStyle,getComputedStyle的用法與區(qū)別

    前端學習筆記style,currentStyle,getComputedStyle的用法與區(qū)別

    這篇文章主要介紹了前端學習筆記style,currentStyle,getComputedStyle的用法與區(qū)別,需要的朋友可以參考下
    2016-05-05
  • JS數組在內存中的效率問題淺析

    JS數組在內存中的效率問題淺析

    用js有很久了,但都沒有深究過js的數組形式,下面這篇文章主要給大家介紹了關于JS數組在內存中的效率問題,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-02-02
  • js實現input密碼框顯示/隱藏功能

    js實現input密碼框顯示/隱藏功能

    這篇文章主要為大家詳細介紹了js實現input密碼框顯示和隱藏功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-10-10

最新評論

钦州市| 双城市| 东丽区| 博湖县| 西畴县| 信宜市| 海原县| 兖州市| 沈丘县| 罗田县| 安阳市| 绥阳县| 宜州市| 平舆县| 临洮县| 霍林郭勒市| 湘潭县| 罗源县| 台前县| 娄烦县| 旌德县| 铜山县| 昌吉市| 吴川市| 桓台县| 增城市| 商洛市| 黎城县| 苍梧县| 金山区| 云阳县| 平远县| 通榆县| 白水县| 威远县| 和龙市| 井陉县| 黔西| 西峡县| 永康市| 南岸区|