将后端返回的树状结构平铺开

1.后端返回的数据

{ "message": "success", 
  "code": 0, 
  "data": [
    {"children": [
      {"value": 0, "label": "\u672a\u5f52\u7c7b\u7ec4"}, 
      {"value": 1, "label": "\u5185\u7f51IP\u8303\u56f4"}, 
      {"value": 2, "label": "\u4e2d\u56fd\u6c14\u8c61\u5c40"}, 
      {"children": [
         {"children": [
            {"children": [
               {"value": 7, "label": "\u536b\u661f\u6570\u636e\u4e0e\u8d44\u6e90\u5ba4"}, 
               {"value": 8, "label": "\u6c14\u8c61\u536b\u661f\u5de5\u7a0b\u7814\u53d1\u5ba4"}, 
               {"value": 9, "label": "\u8fd0\u884c\u63a7\u5236\u5ba4"}, 
               {"value": 10, "label": "\u529e\u516c\u5ba4\uff08\u8ba1\u5212\u8d22\u52a1\u5904\uff09"}, 
               {"value": 11, "label": "\u4e1a\u52a1\u7ba1\u7406\u5904"}], 
       "value": 6, "label": "\u536b\u661f\u4e2d\u5fc3"}], 
       "value": 5, "label": "\u5404\u76f4\u5c5e\u5355\u4f4d"}, 
       {"children": 
         [{
           "value": 15, "label": "\u5317\u4eac"}], "value": 13, "label": "\u5404\u7701\uff08\u533a\u3001\u5e02\uff09"}],
          "value": 16, "label": "\u5c40\u673a\u51731"}], 
          "value": -1, "label": "\u5168\u90e8"}]}

2.转换

getFlatArr (arr) {
    return arr.reduce((a, item) => {
        let flatArr = [...a, item];

	        // 可以在此处限制各种需要的条件,在展示字段前加空格,——之类的,以及其它情况
        if (item.children) {
           flatArr = [...flatArr, ...this.getFlatArr(item.children)];
         }
        return flatArr;
        }, []);
    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值