日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

SAP Spartacus B2B Org Unit List节点展开的递归逻辑实现

發布時間:2023/12/19 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SAP Spartacus B2B Org Unit List节点展开的递归逻辑实现 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Rustic Services有兩個子節點,點擊之后,觸發toggle方法:

子節點分別是Services East和Services West:

this.treeToggle$是一個BehaviorSubject:

toggle執行后,執行next方法,通知subscriber:

我想知道的是這個Mapsubscriber是什么時候訂閱的:

可以在Chrome調試器里找到Mapsubscriber的方法實體project:() => tree, 然后作為關鍵字在Visual Studio Code里搜索:

這個value包含的值,應該就是整棵tree, 即() => tree的執行結果:

重新對整棵樹進行排序:

首先把整個完整的tree節點加到values數組里:

然后遞歸處理第一個子節點Rustic Services:

將該子節點,Rustic Services,插入到values數組里,因為遞歸進入convertListItem, values數組已經重新初始化了:

此處準備再次進入Rustic Services的子節點Services East的遞歸處理邏輯:

因為Servies East沒有子節點了,所以跳過74行forEach的執行:

出棧,返回包含Servies East單個元素的數組:

以及計數器3:因為我們總共touch了三個樹節點:root,Rustic Services和Services East:

當前執行上下文里,處理的節點是Rustic Services,處理的子節點為Services East,第75行convertListItem返回的values數組包含的值是Services East的數據,而原有的values,包含的數據是Rustic Services的值:

同樣,下一步處理Services West這個子節點:

至此,Rustic Services本身及其子樹已經處理完畢。values數組總共包含三個元素:

所以我們能夠看出,這是一個深度優先遍歷策略:

最后的處理結果:

更多Jerry的原創文章,盡在:“汪子熙”:

總結

以上是生活随笔為你收集整理的SAP Spartacus B2B Org Unit List节点展开的递归逻辑实现的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。