起因:业务中用到了element级联选择器,级联的反显需要这样的数据[id(父),id(父),id(当前选中)],由于后端的无能,不会遍历找所有关联的父节点,只能由前端来做,所以就写了一个简单的递归。

 findAncestry (arr, id) {
      var temp = []
      var forFn = function (list, id) {
        for (var i = 0; i < list.length; i++) {
          var item = list[i]
          if (item.id === id) {
            temp.push(item)
            forFn(list, item.pid)
            break
          } else {
            if (item.children) {
              forFn(item.children, id)
            }
          }
        }
      }
      forFn(arr, id)
      return temp
 }

 

相关文章:

  • 2021-12-29
  • 2022-12-23
  • 2021-06-12
  • 2021-08-03
  • 2022-12-23
  • 2021-12-19
  • 2022-12-23
  • 2021-11-30
猜你喜欢
  • 2021-11-30
  • 2021-11-30
  • 2021-07-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-10-28
相关资源
相似解决方案