- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
给定两个无序平面数组:
teamLinks {
parentBpxTeamId,
childBpxTeamId
}
teams {
bpxId,
...
}
我想根据teamLinks
将团队重组为嵌套层次结构(任意数量的级别),并且我正在努力想出一种可行的(希望是有效的)方法来做到这一点。
所以数据最终应该是这样的:
[
{
bpxId: 1,
children: [
{
bpxId: 2,
children: [
{
bpxId: 3,
}
]
}
]
}
]
如果teamLinks
是:
[
{
parentBpxTeamId: 1,
childBpxTeamId: 2,
},
{
parentBpxTeamId: 2,
childBpxTeamId: 3,
}
]
const teams=[{bpxId:1},{bpxId:2},{bpxId:3},{bpxId:4},{bpxId:5},{bpxId:6},{bpxId:7},{bpxId:8},{bpxId:9},{bpxId:10},{bpxId:11},{bpxId:12},{bpxId:13},{bpxId:14},{bpxId:15},{bpxId:16},{bpxId:17},{bpxId:18},{bpxId:19},{bpxId:20},{bpxId:21},{bpxId:22},{bpxId:23},{bpxId:24},{bpxId:25},{bpxId:26},{bpxId:27},{bpxId:28},{bpxId:29},{bpxId:30},{bpxId:31},{bpxId:32},{bpxId:33},{bpxId:34},{bpxId:35},{bpxId:36},{bpxId:37},{bpxId:38},{bpxId:39},{bpxId:40},{bpxId:41},{bpxId:42},{bpxId:43},{bpxId:44},{bpxId:45},{bpxId:46},{bpxId:47},{bpxId:48},{bpxId:49},{bpxId:50},{bpxId:51},{bpxId:52},{bpxId:53},{bpxId:54},{bpxId:55},{bpxId:56},{bpxId:57},{bpxId:58},{bpxId:59},{bpxId:60},{bpxId:61},{bpxId:62},{bpxId:63},{bpxId:64},{bpxId:65},{bpxId:66},{bpxId:67},{bpxId:68},{bpxId:69},{bpxId:70},{bpxId:71},{bpxId:72},{bpxId:73},{bpxId:74},{bpxId:75},{bpxId:76},{bpxId:77},{bpxId:78},{bpxId:79},{bpxId:80},{bpxId:81},{bpxId:82},{bpxId:83},{bpxId:84},{bpxId:85},{bpxId:86},{bpxId:87},{bpxId:88},{bpxId:89},{bpxId:90},{bpxId:91},{bpxId:92},{bpxId:93},{bpxId:94},{bpxId:95},{bpxId:96},{bpxId:97},{bpxId:98},{bpxId:99},{bpxId:100},{bpxId:101},{bpxId:102},{bpxId:103},{bpxId:104},{bpxId:105},{bpxId:106},{bpxId:107},{bpxId:108},{bpxId:109},{bpxId:110},{bpxId:111},{bpxId:112},{bpxId:113},{bpxId:114},{bpxId:115},{bpxId:116},{bpxId:117},{bpxId:118},{bpxId:119},{bpxId:120},{bpxId:121},{bpxId:122},{bpxId:123},{bpxId:124},{bpxId:125},{bpxId:126},{bpxId:127},{bpxId:128},{bpxId:129},{bpxId:130},{bpxId:131},{bpxId:132},{bpxId:133},{bpxId:134},{bpxId:135},{bpxId:136},{bpxId:137},{bpxId:138},{bpxId:139},{bpxId:140},{bpxId:141},{bpxId:142},{bpxId:143},{bpxId:144},{bpxId:145},{bpxId:146},{bpxId:147},{bpxId:148},{bpxId:149},{bpxId:150},{bpxId:151},{bpxId:152},{bpxId:153},{bpxId:154},{bpxId:155},{bpxId:156},{bpxId:157},{bpxId:158},{bpxId:159},{bpxId:160},{bpxId:161},{bpxId:162},{bpxId:163},{bpxId:164},{bpxId:165},{bpxId:166},{bpxId:167},{bpxId:168},{bpxId:169},{bpxId:170},{bpxId:171},{bpxId:172},{bpxId:173},{bpxId:174},{bpxId:175},{bpxId:176},{bpxId:177},{bpxId:178},{bpxId:179},{bpxId:180},{bpxId:181},{bpxId:182},{bpxId:183},{bpxId:184},{bpxId:185},{bpxId:186},{bpxId:187},{bpxId:188},{bpxId:189},{bpxId:190},{bpxId:191},{bpxId:192},{bpxId:193},{bpxId:194},{bpxId:195},{bpxId:196},{bpxId:197},{bpxId:198},{bpxId:199},{bpxId:200},{bpxId:201},{bpxId:202},{bpxId:203},{bpxId:204},{bpxId:205},{bpxId:206},{bpxId:207},{bpxId:208},{bpxId:209},{bpxId:210},{bpxId:211},{bpxId:212},{bpxId:213},{bpxId:214},{bpxId:215},{bpxId:216},{bpxId:217},{bpxId:218},{bpxId:219},{bpxId:220},{bpxId:221},{bpxId:222},{bpxId:223},{bpxId:224},{bpxId:225},{bpxId:226},{bpxId:227},{bpxId:228},{bpxId:229},{bpxId:230},{bpxId:231},{bpxId:232},{bpxId:233},{bpxId:234},{bpxId:235},{bpxId:236},{bpxId:237},{bpxId:238},{bpxId:239},{bpxId:240},{bpxId:241},{bpxId:242},{bpxId:243},{bpxId:244},{bpxId:245},{bpxId:246},{bpxId:247},{bpxId:248},{bpxId:249},{bpxId:250},{bpxId:251},{bpxId:252},{bpxId:253},{bpxId:254},{bpxId:255},{bpxId:256},{bpxId:257},{bpxId:258},{bpxId:259},{bpxId:260},{bpxId:261},{bpxId:262},{bpxId:263},{bpxId:264},{bpxId:265},{bpxId:266},{bpxId:267},{bpxId:268},{bpxId:269},{bpxId:270},{bpxId:271},{bpxId:272},{bpxId:273},{bpxId:274},{bpxId:275},{bpxId:276},{bpxId:277},{bpxId:278},{bpxId:279},{bpxId:280},{bpxId:281},{bpxId:282},{bpxId:283},{bpxId:284},{bpxId:285},{bpxId:286},{bpxId:287},{bpxId:288},{bpxId:289},{bpxId:290},{bpxId:291},{bpxId:292},{bpxId:293},{bpxId:294},{bpxId:295},{bpxId:296},{bpxId:297},{bpxId:298},{bpxId:299},{bpxId:300},{bpxId:301},{bpxId:302},{bpxId:303},{bpxId:304},{bpxId:305},{bpxId:306},{bpxId:307},{bpxId:308},{bpxId:309},{bpxId:310},{bpxId:311},{bpxId:312},{bpxId:313},{bpxId:314},{bpxId:315},{bpxId:316},{bpxId:317},{bpxId:318},{bpxId:319},{bpxId:320},{bpxId:321},{bpxId:322},{bpxId:323},{bpxId:324},{bpxId:325},{bpxId:326},{bpxId:327},{bpxId:328},{bpxId:329},{bpxId:330},{bpxId:331},{bpxId:332},{bpxId:333},{bpxId:334},{bpxId:335},{bpxId:336},{bpxId:337},{bpxId:338},{bpxId:339},{bpxId:340},{bpxId:341},{bpxId:342},{bpxId:343},{bpxId:344},{bpxId:345},{bpxId:346},{bpxId:347},{bpxId:348},{bpxId:349},{bpxId:350},{bpxId:351},{bpxId:352},{bpxId:353},{bpxId:736},{bpxId:737},{bpxId:738},{bpxId:739},{bpxId:740},{bpxId:741},{bpxId:742},{bpxId:743},{bpxId:744},{bpxId:745},{bpxId:746},{bpxId:748},{bpxId:749},{bpxId:750},{bpxId:751},{bpxId:752},{bpxId:753},{bpxId:754},{bpxId:755},{bpxId:770},{bpxId:788},{bpxId:790},{bpxId:780},{bpxId:785},{bpxId:781},{bpxId:782},{bpxId:783},{bpxId:787},{bpxId:766},{bpxId:762},{bpxId:769},{bpxId:778},{bpxId:761},{bpxId:792},{bpxId:789},{bpxId:735},{bpxId:764},{bpxId:791},{bpxId:763},{bpxId:771},{bpxId:767},{bpxId:784},{bpxId:768},{bpxId:747},{bpxId:786},{bpxId:779},{bpxId:833}];
const teamLinks=[{parentBpxTeamId:1,childBpxTeamId:2},{parentBpxTeamId:1,childBpxTeamId:11},{parentBpxTeamId:1,childBpxTeamId:91},{parentBpxTeamId:1,childBpxTeamId:270},{parentBpxTeamId:2,childBpxTeamId:3},{parentBpxTeamId:3,childBpxTeamId:4},{parentBpxTeamId:3,childBpxTeamId:5},{parentBpxTeamId:3,childBpxTeamId:6},{parentBpxTeamId:3,childBpxTeamId:7},{parentBpxTeamId:3,childBpxTeamId:8},{parentBpxTeamId:3,childBpxTeamId:9},{parentBpxTeamId:3,childBpxTeamId:10},{parentBpxTeamId:3,childBpxTeamId:92},{parentBpxTeamId:11,childBpxTeamId:12},{parentBpxTeamId:12,childBpxTeamId:13},{parentBpxTeamId:14,childBpxTeamId:15},{parentBpxTeamId:14,childBpxTeamId:24},{parentBpxTeamId:14,childBpxTeamId:38},{parentBpxTeamId:14,childBpxTeamId:54},{parentBpxTeamId:14,childBpxTeamId:62},{parentBpxTeamId:14,childBpxTeamId:69},{parentBpxTeamId:14,childBpxTeamId:73},{parentBpxTeamId:14,childBpxTeamId:76},{parentBpxTeamId:14,childBpxTeamId:88},{parentBpxTeamId:15,childBpxTeamId:16},{parentBpxTeamId:16,childBpxTeamId:17},{parentBpxTeamId:16,childBpxTeamId:18},{parentBpxTeamId:16,childBpxTeamId:19},{parentBpxTeamId:16,childBpxTeamId:20},{parentBpxTeamId:16,childBpxTeamId:21},{parentBpxTeamId:16,childBpxTeamId:22},{parentBpxTeamId:16,childBpxTeamId:23},{parentBpxTeamId:24,childBpxTeamId:25},{parentBpxTeamId:25,childBpxTeamId:26},{parentBpxTeamId:25,childBpxTeamId:27},{parentBpxTeamId:25,childBpxTeamId:28},{parentBpxTeamId:25,childBpxTeamId:29},{parentBpxTeamId:25,childBpxTeamId:30},{parentBpxTeamId:25,childBpxTeamId:31},{parentBpxTeamId:25,childBpxTeamId:32},{parentBpxTeamId:25,childBpxTeamId:33},{parentBpxTeamId:25,childBpxTeamId:34},{parentBpxTeamId:25,childBpxTeamId:35},{parentBpxTeamId:25,childBpxTeamId:36},{parentBpxTeamId:25,childBpxTeamId:37},{parentBpxTeamId:38,childBpxTeamId:39},{parentBpxTeamId:39,childBpxTeamId:40},{parentBpxTeamId:39,childBpxTeamId:41},{parentBpxTeamId:39,childBpxTeamId:42},{parentBpxTeamId:39,childBpxTeamId:43},{parentBpxTeamId:39,childBpxTeamId:44},{parentBpxTeamId:39,childBpxTeamId:45},{parentBpxTeamId:39,childBpxTeamId:46},{parentBpxTeamId:39,childBpxTeamId:47},{parentBpxTeamId:39,childBpxTeamId:48},{parentBpxTeamId:39,childBpxTeamId:49},{parentBpxTeamId:39,childBpxTeamId:50},{parentBpxTeamId:39,childBpxTeamId:51},{parentBpxTeamId:39,childBpxTeamId:52},{parentBpxTeamId:39,childBpxTeamId:53},{parentBpxTeamId:54,childBpxTeamId:55},{parentBpxTeamId:55,childBpxTeamId:56},{parentBpxTeamId:55,childBpxTeamId:57},{parentBpxTeamId:55,childBpxTeamId:58},{parentBpxTeamId:55,childBpxTeamId:59},{parentBpxTeamId:55,childBpxTeamId:60},{parentBpxTeamId:55,childBpxTeamId:61},{parentBpxTeamId:62,childBpxTeamId:63},{parentBpxTeamId:63,childBpxTeamId:64},{parentBpxTeamId:63,childBpxTeamId:65},{parentBpxTeamId:63,childBpxTeamId:66},{parentBpxTeamId:63,childBpxTeamId:67},{parentBpxTeamId:63,childBpxTeamId:68},{parentBpxTeamId:69,childBpxTeamId:70},{parentBpxTeamId:69,childBpxTeamId:71},{parentBpxTeamId:71,childBpxTeamId:72},{parentBpxTeamId:73,childBpxTeamId:74},{parentBpxTeamId:74,childBpxTeamId:75},{parentBpxTeamId:76,childBpxTeamId:77},{parentBpxTeamId:77,childBpxTeamId:78},{parentBpxTeamId:77,childBpxTeamId:79},{parentBpxTeamId:77,childBpxTeamId:80},{parentBpxTeamId:77,childBpxTeamId:81},{parentBpxTeamId:77,childBpxTeamId:82},{parentBpxTeamId:77,childBpxTeamId:83},{parentBpxTeamId:77,childBpxTeamId:84},{parentBpxTeamId:77,childBpxTeamId:85},{parentBpxTeamId:77,childBpxTeamId:86},{parentBpxTeamId:77,childBpxTeamId:87},{parentBpxTeamId:88,childBpxTeamId:89},{parentBpxTeamId:89,childBpxTeamId:90},{parentBpxTeamId:91,childBpxTeamId:3},{parentBpxTeamId:93,childBpxTeamId:94},{parentBpxTeamId:93,childBpxTeamId:97},{parentBpxTeamId:93,childBpxTeamId:100},{parentBpxTeamId:93,childBpxTeamId:103},{parentBpxTeamId:93,childBpxTeamId:104},{parentBpxTeamId:93,childBpxTeamId:106},{parentBpxTeamId:93,childBpxTeamId:109},{parentBpxTeamId:93,childBpxTeamId:112},{parentBpxTeamId:93,childBpxTeamId:115},{parentBpxTeamId:94,childBpxTeamId:95},{parentBpxTeamId:95,childBpxTeamId:96},{parentBpxTeamId:95,childBpxTeamId:98},{parentBpxTeamId:95,childBpxTeamId:99},{parentBpxTeamId:97,childBpxTeamId:95},{parentBpxTeamId:100,childBpxTeamId:101},{parentBpxTeamId:101,childBpxTeamId:102},{parentBpxTeamId:101,childBpxTeamId:105},{parentBpxTeamId:103,childBpxTeamId:101},{parentBpxTeamId:104,childBpxTeamId:101},{parentBpxTeamId:106,childBpxTeamId:107},{parentBpxTeamId:107,childBpxTeamId:108},{parentBpxTeamId:109,childBpxTeamId:110},{parentBpxTeamId:110,childBpxTeamId:111},{parentBpxTeamId:112,childBpxTeamId:113},{parentBpxTeamId:113,childBpxTeamId:114},{parentBpxTeamId:115,childBpxTeamId:116},{parentBpxTeamId:116,childBpxTeamId:117},{parentBpxTeamId:118,childBpxTeamId:119},{parentBpxTeamId:119,childBpxTeamId:120},{parentBpxTeamId:121,childBpxTeamId:122},{parentBpxTeamId:121,childBpxTeamId:139},{parentBpxTeamId:121,childBpxTeamId:144},{parentBpxTeamId:122,childBpxTeamId:123},{parentBpxTeamId:122,childBpxTeamId:125},{parentBpxTeamId:122,childBpxTeamId:127},{parentBpxTeamId:122,childBpxTeamId:129},{parentBpxTeamId:122,childBpxTeamId:131},{parentBpxTeamId:122,childBpxTeamId:133},{parentBpxTeamId:122,childBpxTeamId:135},{parentBpxTeamId:122,childBpxTeamId:137},{parentBpxTeamId:123,childBpxTeamId:124},{parentBpxTeamId:125,childBpxTeamId:126},{parentBpxTeamId:127,childBpxTeamId:128},{parentBpxTeamId:129,childBpxTeamId:130},{parentBpxTeamId:131,childBpxTeamId:132},{parentBpxTeamId:133,childBpxTeamId:134},{parentBpxTeamId:135,childBpxTeamId:136},{parentBpxTeamId:137,childBpxTeamId:138},{parentBpxTeamId:139,childBpxTeamId:140},{parentBpxTeamId:139,childBpxTeamId:141},{parentBpxTeamId:139,childBpxTeamId:142},{parentBpxTeamId:139,childBpxTeamId:143},{parentBpxTeamId:144,childBpxTeamId:145},{parentBpxTeamId:144,childBpxTeamId:146},{parentBpxTeamId:147,childBpxTeamId:148},{parentBpxTeamId:149,childBpxTeamId:150},{parentBpxTeamId:151,childBpxTeamId:152},{parentBpxTeamId:151,childBpxTeamId:154},{parentBpxTeamId:151,childBpxTeamId:156},{parentBpxTeamId:151,childBpxTeamId:158},{parentBpxTeamId:151,childBpxTeamId:160},{parentBpxTeamId:151,childBpxTeamId:162},{parentBpxTeamId:151,childBpxTeamId:164},{parentBpxTeamId:151,childBpxTeamId:166},{parentBpxTeamId:151,childBpxTeamId:168},{parentBpxTeamId:151,childBpxTeamId:170},{parentBpxTeamId:151,childBpxTeamId:172},{parentBpxTeamId:151,childBpxTeamId:174},{parentBpxTeamId:152,childBpxTeamId:153},{parentBpxTeamId:152,childBpxTeamId:155},{parentBpxTeamId:152,childBpxTeamId:157},{parentBpxTeamId:152,childBpxTeamId:159},{parentBpxTeamId:152,childBpxTeamId:161},{parentBpxTeamId:152,childBpxTeamId:163},{parentBpxTeamId:152,childBpxTeamId:165},{parentBpxTeamId:152,childBpxTeamId:167},{parentBpxTeamId:152,childBpxTeamId:169},{parentBpxTeamId:152,childBpxTeamId:171},{parentBpxTeamId:152,childBpxTeamId:173},{parentBpxTeamId:152,childBpxTeamId:175},{parentBpxTeamId:154,childBpxTeamId:152},{parentBpxTeamId:156,childBpxTeamId:152},{parentBpxTeamId:158,childBpxTeamId:152},{parentBpxTeamId:160,childBpxTeamId:152},{parentBpxTeamId:162,childBpxTeamId:152},{parentBpxTeamId:164,childBpxTeamId:152},{parentBpxTeamId:166,childBpxTeamId:152},{parentBpxTeamId:168,childBpxTeamId:152},{parentBpxTeamId:170,childBpxTeamId:152},{parentBpxTeamId:172,childBpxTeamId:152},{parentBpxTeamId:174,childBpxTeamId:152},{parentBpxTeamId:176,childBpxTeamId:177},{parentBpxTeamId:177,childBpxTeamId:178},{parentBpxTeamId:177,childBpxTeamId:768},{parentBpxTeamId:178,childBpxTeamId:179},{parentBpxTeamId:180,childBpxTeamId:181},{parentBpxTeamId:180,childBpxTeamId:183},{parentBpxTeamId:180,childBpxTeamId:185},{parentBpxTeamId:180,childBpxTeamId:187},{parentBpxTeamId:180,childBpxTeamId:189},{parentBpxTeamId:180,childBpxTeamId:191},{parentBpxTeamId:181,childBpxTeamId:182},{parentBpxTeamId:183,childBpxTeamId:184},{parentBpxTeamId:185,childBpxTeamId:186},{parentBpxTeamId:187,childBpxTeamId:188},{parentBpxTeamId:189,childBpxTeamId:190},{parentBpxTeamId:191,childBpxTeamId:192},{parentBpxTeamId:193,childBpxTeamId:194},{parentBpxTeamId:193,childBpxTeamId:197},{parentBpxTeamId:194,childBpxTeamId:195},{parentBpxTeamId:195,childBpxTeamId:196},{parentBpxTeamId:197,childBpxTeamId:198},{parentBpxTeamId:198,childBpxTeamId:199},{parentBpxTeamId:200,childBpxTeamId:201},{parentBpxTeamId:200,childBpxTeamId:204},{parentBpxTeamId:201,childBpxTeamId:202},{parentBpxTeamId:202,childBpxTeamId:203},{parentBpxTeamId:204,childBpxTeamId:205},{parentBpxTeamId:204,childBpxTeamId:207},{parentBpxTeamId:204,childBpxTeamId:209},{parentBpxTeamId:204,childBpxTeamId:210},{parentBpxTeamId:205,childBpxTeamId:206},{parentBpxTeamId:207,childBpxTeamId:208},{parentBpxTeamId:211,childBpxTeamId:212},{parentBpxTeamId:211,childBpxTeamId:215},{parentBpxTeamId:211,childBpxTeamId:217},{parentBpxTeamId:211,childBpxTeamId:219},{parentBpxTeamId:211,childBpxTeamId:221},{parentBpxTeamId:211,childBpxTeamId:223},{parentBpxTeamId:211,childBpxTeamId:226},{parentBpxTeamId:211,childBpxTeamId:228},{parentBpxTeamId:211,childBpxTeamId:230},{parentBpxTeamId:211,childBpxTeamId:232},{parentBpxTeamId:211,childBpxTeamId:234},{parentBpxTeamId:211,childBpxTeamId:236},{parentBpxTeamId:211,childBpxTeamId:238},{parentBpxTeamId:211,childBpxTeamId:240},{parentBpxTeamId:211,childBpxTeamId:242},{parentBpxTeamId:211,childBpxTeamId:244},{parentBpxTeamId:211,childBpxTeamId:246},{parentBpxTeamId:212,childBpxTeamId:213},{parentBpxTeamId:213,childBpxTeamId:214},{parentBpxTeamId:215,childBpxTeamId:216},{parentBpxTeamId:217,childBpxTeamId:218},{parentBpxTeamId:219,childBpxTeamId:220},{parentBpxTeamId:221,childBpxTeamId:222},{parentBpxTeamId:223,childBpxTeamId:224},{parentBpxTeamId:223,childBpxTeamId:225},{parentBpxTeamId:226,childBpxTeamId:227},{parentBpxTeamId:228,childBpxTeamId:229},{parentBpxTeamId:230,childBpxTeamId:231},{parentBpxTeamId:232,childBpxTeamId:233},{parentBpxTeamId:234,childBpxTeamId:235},{parentBpxTeamId:236,childBpxTeamId:237},{parentBpxTeamId:238,childBpxTeamId:239},{parentBpxTeamId:240,childBpxTeamId:241},{parentBpxTeamId:242,childBpxTeamId:243},{parentBpxTeamId:244,childBpxTeamId:245},{parentBpxTeamId:246,childBpxTeamId:247},{parentBpxTeamId:248,childBpxTeamId:249},{parentBpxTeamId:249,childBpxTeamId:250},{parentBpxTeamId:249,childBpxTeamId:251},{parentBpxTeamId:252,childBpxTeamId:253},{parentBpxTeamId:253,childBpxTeamId:254},{parentBpxTeamId:255,childBpxTeamId:256},{parentBpxTeamId:255,childBpxTeamId:257},{parentBpxTeamId:263,childBpxTeamId:264},{parentBpxTeamId:264,childBpxTeamId:265},{parentBpxTeamId:266,childBpxTeamId:267},{parentBpxTeamId:267,childBpxTeamId:268},{parentBpxTeamId:270,childBpxTeamId:271},{parentBpxTeamId:271,childBpxTeamId:272},{parentBpxTeamId:273,childBpxTeamId:274},{parentBpxTeamId:274,childBpxTeamId:275},{parentBpxTeamId:275,childBpxTeamId:276},{parentBpxTeamId:275,childBpxTeamId:277},{parentBpxTeamId:275,childBpxTeamId:278},{parentBpxTeamId:275,childBpxTeamId:279},{parentBpxTeamId:280,childBpxTeamId:281},{parentBpxTeamId:281,childBpxTeamId:282},{parentBpxTeamId:283,childBpxTeamId:284},{parentBpxTeamId:284,childBpxTeamId:285},{parentBpxTeamId:286,childBpxTeamId:287},{parentBpxTeamId:287,childBpxTeamId:288},{parentBpxTeamId:289,childBpxTeamId:290},{parentBpxTeamId:290,childBpxTeamId:291},{parentBpxTeamId:290,childBpxTeamId:292},{parentBpxTeamId:290,childBpxTeamId:293},{parentBpxTeamId:290,childBpxTeamId:294},{parentBpxTeamId:290,childBpxTeamId:295},{parentBpxTeamId:290,childBpxTeamId:296},{parentBpxTeamId:290,childBpxTeamId:297},{parentBpxTeamId:290,childBpxTeamId:298},{parentBpxTeamId:290,childBpxTeamId:299},{parentBpxTeamId:290,childBpxTeamId:300},{parentBpxTeamId:290,childBpxTeamId:301},{parentBpxTeamId:290,childBpxTeamId:302},{parentBpxTeamId:290,childBpxTeamId:303},{parentBpxTeamId:290,childBpxTeamId:304},{parentBpxTeamId:290,childBpxTeamId:305},{parentBpxTeamId:290,childBpxTeamId:306},{parentBpxTeamId:290,childBpxTeamId:307},{parentBpxTeamId:290,childBpxTeamId:308},{parentBpxTeamId:290,childBpxTeamId:309},{parentBpxTeamId:290,childBpxTeamId:310},{parentBpxTeamId:290,childBpxTeamId:311},{parentBpxTeamId:290,childBpxTeamId:312},{parentBpxTeamId:290,childBpxTeamId:313},{parentBpxTeamId:290,childBpxTeamId:314},{parentBpxTeamId:290,childBpxTeamId:315},{parentBpxTeamId:290,childBpxTeamId:316},{parentBpxTeamId:290,childBpxTeamId:317},{parentBpxTeamId:290,childBpxTeamId:318},{parentBpxTeamId:290,childBpxTeamId:319},{parentBpxTeamId:290,childBpxTeamId:320},{parentBpxTeamId:290,childBpxTeamId:321},{parentBpxTeamId:290,childBpxTeamId:322},{parentBpxTeamId:290,childBpxTeamId:323},{parentBpxTeamId:290,childBpxTeamId:324},{parentBpxTeamId:290,childBpxTeamId:325},{parentBpxTeamId:290,childBpxTeamId:326},{parentBpxTeamId:290,childBpxTeamId:327},{parentBpxTeamId:290,childBpxTeamId:328},{parentBpxTeamId:290,childBpxTeamId:329},{parentBpxTeamId:290,childBpxTeamId:330},{parentBpxTeamId:290,childBpxTeamId:331},{parentBpxTeamId:290,childBpxTeamId:332},{parentBpxTeamId:290,childBpxTeamId:333},{parentBpxTeamId:290,childBpxTeamId:334},{parentBpxTeamId:290,childBpxTeamId:335},{parentBpxTeamId:290,childBpxTeamId:336},{parentBpxTeamId:290,childBpxTeamId:337},{parentBpxTeamId:290,childBpxTeamId:338},{parentBpxTeamId:290,childBpxTeamId:339},{parentBpxTeamId:290,childBpxTeamId:340},{parentBpxTeamId:290,childBpxTeamId:341},{parentBpxTeamId:290,childBpxTeamId:342},{parentBpxTeamId:290,childBpxTeamId:343},{parentBpxTeamId:290,childBpxTeamId:344},{parentBpxTeamId:290,childBpxTeamId:345},{parentBpxTeamId:290,childBpxTeamId:346},{parentBpxTeamId:290,childBpxTeamId:347},{parentBpxTeamId:290,childBpxTeamId:348},{parentBpxTeamId:290,childBpxTeamId:349},{parentBpxTeamId:290,childBpxTeamId:350},{parentBpxTeamId:290,childBpxTeamId:351},{parentBpxTeamId:290,childBpxTeamId:352},{parentBpxTeamId:290,childBpxTeamId:353},{parentBpxTeamId:735,childBpxTeamId:736},{parentBpxTeamId:735,childBpxTeamId:737},{parentBpxTeamId:735,childBpxTeamId:738},{parentBpxTeamId:735,childBpxTeamId:739},{parentBpxTeamId:735,childBpxTeamId:740},{parentBpxTeamId:735,childBpxTeamId:741},{parentBpxTeamId:735,childBpxTeamId:742},{parentBpxTeamId:735,childBpxTeamId:743},{parentBpxTeamId:735,childBpxTeamId:744},{parentBpxTeamId:735,childBpxTeamId:745},{parentBpxTeamId:735,childBpxTeamId:746},{parentBpxTeamId:735,childBpxTeamId:766},{parentBpxTeamId:747,childBpxTeamId:748},{parentBpxTeamId:747,childBpxTeamId:749},{parentBpxTeamId:747,childBpxTeamId:750},{parentBpxTeamId:747,childBpxTeamId:751},{parentBpxTeamId:747,childBpxTeamId:752},{parentBpxTeamId:747,childBpxTeamId:753},{parentBpxTeamId:747,childBpxTeamId:754},{parentBpxTeamId:747,childBpxTeamId:755},{parentBpxTeamId:761,childBpxTeamId:762},{parentBpxTeamId:762,childBpxTeamId:763},{parentBpxTeamId:762,childBpxTeamId:764},{parentBpxTeamId:767,childBpxTeamId:747},{parentBpxTeamId:767,childBpxTeamId:778},{parentBpxTeamId:767,childBpxTeamId:789},{parentBpxTeamId:768,childBpxTeamId:769},{parentBpxTeamId:768,childBpxTeamId:770},{parentBpxTeamId:768,childBpxTeamId:771},{parentBpxTeamId:778,childBpxTeamId:779},{parentBpxTeamId:778,childBpxTeamId:780},{parentBpxTeamId:778,childBpxTeamId:781},{parentBpxTeamId:778,childBpxTeamId:782},{parentBpxTeamId:778,childBpxTeamId:783},{parentBpxTeamId:778,childBpxTeamId:784},{parentBpxTeamId:778,childBpxTeamId:785},{parentBpxTeamId:778,childBpxTeamId:786},{parentBpxTeamId:778,childBpxTeamId:787},{parentBpxTeamId:778,childBpxTeamId:788},{parentBpxTeamId:789,childBpxTeamId:790},{parentBpxTeamId:789,childBpxTeamId:791},{parentBpxTeamId:789,childBpxTeamId:792}];
我会展示到目前为止我所拥有的,但我还没有任何工作!如果我这样做就会更新。感谢您的帮助。
最佳答案
以下代码片段应该有效:
// [key , value ]
const parents = new Map(teams.map(team => [team.bpxId, { ...team, children: [] }]));
const lut = new Map(parents);
teamLinks.forEach(({ parentBpxTeamId, childBpxTeamId }) => {
lut.get(parentBpxTeamId).children.push(lut.get(childBpxTeamId));
parents.delete(childBpxTeamId);
});
const hierarchies = Array.from(parents.values());
它创建父团队层次结构的 map 和查找表,两者都使用 Map
根据其 id 引用每个团队层次结构,然后循环遍历每个链接并将每个子引用附加到每个父引用。此方法假设 teamLinks
数组中没有重复的链接。
借用 Nina 的答案,当子级添加到其他团队下时,这也会将子级从层次结构的顶层删除。
const teams=[{bpxId:1},{bpxId:2},{bpxId:3},{bpxId:4},{bpxId:5},{bpxId:6},{bpxId:7},{bpxId:8},{bpxId:9},{bpxId:10},{bpxId:11},{bpxId:12},{bpxId:13},{bpxId:14},{bpxId:15},{bpxId:16},{bpxId:17},{bpxId:18},{bpxId:19},{bpxId:20},{bpxId:21},{bpxId:22},{bpxId:23},{bpxId:24},{bpxId:25},{bpxId:26},{bpxId:27},{bpxId:28},{bpxId:29},{bpxId:30},{bpxId:31},{bpxId:32},{bpxId:33},{bpxId:34},{bpxId:35},{bpxId:36},{bpxId:37},{bpxId:38},{bpxId:39},{bpxId:40},{bpxId:41},{bpxId:42},{bpxId:43},{bpxId:44},{bpxId:45},{bpxId:46},{bpxId:47},{bpxId:48},{bpxId:49},{bpxId:50},{bpxId:51},{bpxId:52},{bpxId:53},{bpxId:54},{bpxId:55},{bpxId:56},{bpxId:57},{bpxId:58},{bpxId:59},{bpxId:60},{bpxId:61},{bpxId:62},{bpxId:63},{bpxId:64},{bpxId:65},{bpxId:66},{bpxId:67},{bpxId:68},{bpxId:69},{bpxId:70},{bpxId:71},{bpxId:72},{bpxId:73},{bpxId:74},{bpxId:75},{bpxId:76},{bpxId:77},{bpxId:78},{bpxId:79},{bpxId:80},{bpxId:81},{bpxId:82},{bpxId:83},{bpxId:84},{bpxId:85},{bpxId:86},{bpxId:87},{bpxId:88},{bpxId:89},{bpxId:90},{bpxId:91},{bpxId:92},{bpxId:93},{bpxId:94},{bpxId:95},{bpxId:96},{bpxId:97},{bpxId:98},{bpxId:99},{bpxId:100},{bpxId:101},{bpxId:102},{bpxId:103},{bpxId:104},{bpxId:105},{bpxId:106},{bpxId:107},{bpxId:108},{bpxId:109},{bpxId:110},{bpxId:111},{bpxId:112},{bpxId:113},{bpxId:114},{bpxId:115},{bpxId:116},{bpxId:117},{bpxId:118},{bpxId:119},{bpxId:120},{bpxId:121},{bpxId:122},{bpxId:123},{bpxId:124},{bpxId:125},{bpxId:126},{bpxId:127},{bpxId:128},{bpxId:129},{bpxId:130},{bpxId:131},{bpxId:132},{bpxId:133},{bpxId:134},{bpxId:135},{bpxId:136},{bpxId:137},{bpxId:138},{bpxId:139},{bpxId:140},{bpxId:141},{bpxId:142},{bpxId:143},{bpxId:144},{bpxId:145},{bpxId:146},{bpxId:147},{bpxId:148},{bpxId:149},{bpxId:150},{bpxId:151},{bpxId:152},{bpxId:153},{bpxId:154},{bpxId:155},{bpxId:156},{bpxId:157},{bpxId:158},{bpxId:159},{bpxId:160},{bpxId:161},{bpxId:162},{bpxId:163},{bpxId:164},{bpxId:165},{bpxId:166},{bpxId:167},{bpxId:168},{bpxId:169},{bpxId:170},{bpxId:171},{bpxId:172},{bpxId:173},{bpxId:174},{bpxId:175},{bpxId:176},{bpxId:177},{bpxId:178},{bpxId:179},{bpxId:180},{bpxId:181},{bpxId:182},{bpxId:183},{bpxId:184},{bpxId:185},{bpxId:186},{bpxId:187},{bpxId:188},{bpxId:189},{bpxId:190},{bpxId:191},{bpxId:192},{bpxId:193},{bpxId:194},{bpxId:195},{bpxId:196},{bpxId:197},{bpxId:198},{bpxId:199},{bpxId:200},{bpxId:201},{bpxId:202},{bpxId:203},{bpxId:204},{bpxId:205},{bpxId:206},{bpxId:207},{bpxId:208},{bpxId:209},{bpxId:210},{bpxId:211},{bpxId:212},{bpxId:213},{bpxId:214},{bpxId:215},{bpxId:216},{bpxId:217},{bpxId:218},{bpxId:219},{bpxId:220},{bpxId:221},{bpxId:222},{bpxId:223},{bpxId:224},{bpxId:225},{bpxId:226},{bpxId:227},{bpxId:228},{bpxId:229},{bpxId:230},{bpxId:231},{bpxId:232},{bpxId:233},{bpxId:234},{bpxId:235},{bpxId:236},{bpxId:237},{bpxId:238},{bpxId:239},{bpxId:240},{bpxId:241},{bpxId:242},{bpxId:243},{bpxId:244},{bpxId:245},{bpxId:246},{bpxId:247},{bpxId:248},{bpxId:249},{bpxId:250},{bpxId:251},{bpxId:252},{bpxId:253},{bpxId:254},{bpxId:255},{bpxId:256},{bpxId:257},{bpxId:258},{bpxId:259},{bpxId:260},{bpxId:261},{bpxId:262},{bpxId:263},{bpxId:264},{bpxId:265},{bpxId:266},{bpxId:267},{bpxId:268},{bpxId:269},{bpxId:270},{bpxId:271},{bpxId:272},{bpxId:273},{bpxId:274},{bpxId:275},{bpxId:276},{bpxId:277},{bpxId:278},{bpxId:279},{bpxId:280},{bpxId:281},{bpxId:282},{bpxId:283},{bpxId:284},{bpxId:285},{bpxId:286},{bpxId:287},{bpxId:288},{bpxId:289},{bpxId:290},{bpxId:291},{bpxId:292},{bpxId:293},{bpxId:294},{bpxId:295},{bpxId:296},{bpxId:297},{bpxId:298},{bpxId:299},{bpxId:300},{bpxId:301},{bpxId:302},{bpxId:303},{bpxId:304},{bpxId:305},{bpxId:306},{bpxId:307},{bpxId:308},{bpxId:309},{bpxId:310},{bpxId:311},{bpxId:312},{bpxId:313},{bpxId:314},{bpxId:315},{bpxId:316},{bpxId:317},{bpxId:318},{bpxId:319},{bpxId:320},{bpxId:321},{bpxId:322},{bpxId:323},{bpxId:324},{bpxId:325},{bpxId:326},{bpxId:327},{bpxId:328},{bpxId:329},{bpxId:330},{bpxId:331},{bpxId:332},{bpxId:333},{bpxId:334},{bpxId:335},{bpxId:336},{bpxId:337},{bpxId:338},{bpxId:339},{bpxId:340},{bpxId:341},{bpxId:342},{bpxId:343},{bpxId:344},{bpxId:345},{bpxId:346},{bpxId:347},{bpxId:348},{bpxId:349},{bpxId:350},{bpxId:351},{bpxId:352},{bpxId:353},{bpxId:736},{bpxId:737},{bpxId:738},{bpxId:739},{bpxId:740},{bpxId:741},{bpxId:742},{bpxId:743},{bpxId:744},{bpxId:745},{bpxId:746},{bpxId:748},{bpxId:749},{bpxId:750},{bpxId:751},{bpxId:752},{bpxId:753},{bpxId:754},{bpxId:755},{bpxId:770},{bpxId:788},{bpxId:790},{bpxId:780},{bpxId:785},{bpxId:781},{bpxId:782},{bpxId:783},{bpxId:787},{bpxId:766},{bpxId:762},{bpxId:769},{bpxId:778},{bpxId:761},{bpxId:792},{bpxId:789},{bpxId:735},{bpxId:764},{bpxId:791},{bpxId:763},{bpxId:771},{bpxId:767},{bpxId:784},{bpxId:768},{bpxId:747},{bpxId:786},{bpxId:779},{bpxId:833}];
const teamLinks=[{parentBpxTeamId:1,childBpxTeamId:2},{parentBpxTeamId:1,childBpxTeamId:11},{parentBpxTeamId:1,childBpxTeamId:91},{parentBpxTeamId:1,childBpxTeamId:270},{parentBpxTeamId:2,childBpxTeamId:3},{parentBpxTeamId:3,childBpxTeamId:4},{parentBpxTeamId:3,childBpxTeamId:5},{parentBpxTeamId:3,childBpxTeamId:6},{parentBpxTeamId:3,childBpxTeamId:7},{parentBpxTeamId:3,childBpxTeamId:8},{parentBpxTeamId:3,childBpxTeamId:9},{parentBpxTeamId:3,childBpxTeamId:10},{parentBpxTeamId:3,childBpxTeamId:92},{parentBpxTeamId:11,childBpxTeamId:12},{parentBpxTeamId:12,childBpxTeamId:13},{parentBpxTeamId:14,childBpxTeamId:15},{parentBpxTeamId:14,childBpxTeamId:24},{parentBpxTeamId:14,childBpxTeamId:38},{parentBpxTeamId:14,childBpxTeamId:54},{parentBpxTeamId:14,childBpxTeamId:62},{parentBpxTeamId:14,childBpxTeamId:69},{parentBpxTeamId:14,childBpxTeamId:73},{parentBpxTeamId:14,childBpxTeamId:76},{parentBpxTeamId:14,childBpxTeamId:88},{parentBpxTeamId:15,childBpxTeamId:16},{parentBpxTeamId:16,childBpxTeamId:17},{parentBpxTeamId:16,childBpxTeamId:18},{parentBpxTeamId:16,childBpxTeamId:19},{parentBpxTeamId:16,childBpxTeamId:20},{parentBpxTeamId:16,childBpxTeamId:21},{parentBpxTeamId:16,childBpxTeamId:22},{parentBpxTeamId:16,childBpxTeamId:23},{parentBpxTeamId:24,childBpxTeamId:25},{parentBpxTeamId:25,childBpxTeamId:26},{parentBpxTeamId:25,childBpxTeamId:27},{parentBpxTeamId:25,childBpxTeamId:28},{parentBpxTeamId:25,childBpxTeamId:29},{parentBpxTeamId:25,childBpxTeamId:30},{parentBpxTeamId:25,childBpxTeamId:31},{parentBpxTeamId:25,childBpxTeamId:32},{parentBpxTeamId:25,childBpxTeamId:33},{parentBpxTeamId:25,childBpxTeamId:34},{parentBpxTeamId:25,childBpxTeamId:35},{parentBpxTeamId:25,childBpxTeamId:36},{parentBpxTeamId:25,childBpxTeamId:37},{parentBpxTeamId:38,childBpxTeamId:39},{parentBpxTeamId:39,childBpxTeamId:40},{parentBpxTeamId:39,childBpxTeamId:41},{parentBpxTeamId:39,childBpxTeamId:42},{parentBpxTeamId:39,childBpxTeamId:43},{parentBpxTeamId:39,childBpxTeamId:44},{parentBpxTeamId:39,childBpxTeamId:45},{parentBpxTeamId:39,childBpxTeamId:46},{parentBpxTeamId:39,childBpxTeamId:47},{parentBpxTeamId:39,childBpxTeamId:48},{parentBpxTeamId:39,childBpxTeamId:49},{parentBpxTeamId:39,childBpxTeamId:50},{parentBpxTeamId:39,childBpxTeamId:51},{parentBpxTeamId:39,childBpxTeamId:52},{parentBpxTeamId:39,childBpxTeamId:53},{parentBpxTeamId:54,childBpxTeamId:55},{parentBpxTeamId:55,childBpxTeamId:56},{parentBpxTeamId:55,childBpxTeamId:57},{parentBpxTeamId:55,childBpxTeamId:58},{parentBpxTeamId:55,childBpxTeamId:59},{parentBpxTeamId:55,childBpxTeamId:60},{parentBpxTeamId:55,childBpxTeamId:61},{parentBpxTeamId:62,childBpxTeamId:63},{parentBpxTeamId:63,childBpxTeamId:64},{parentBpxTeamId:63,childBpxTeamId:65},{parentBpxTeamId:63,childBpxTeamId:66},{parentBpxTeamId:63,childBpxTeamId:67},{parentBpxTeamId:63,childBpxTeamId:68},{parentBpxTeamId:69,childBpxTeamId:70},{parentBpxTeamId:69,childBpxTeamId:71},{parentBpxTeamId:71,childBpxTeamId:72},{parentBpxTeamId:73,childBpxTeamId:74},{parentBpxTeamId:74,childBpxTeamId:75},{parentBpxTeamId:76,childBpxTeamId:77},{parentBpxTeamId:77,childBpxTeamId:78},{parentBpxTeamId:77,childBpxTeamId:79},{parentBpxTeamId:77,childBpxTeamId:80},{parentBpxTeamId:77,childBpxTeamId:81},{parentBpxTeamId:77,childBpxTeamId:82},{parentBpxTeamId:77,childBpxTeamId:83},{parentBpxTeamId:77,childBpxTeamId:84},{parentBpxTeamId:77,childBpxTeamId:85},{parentBpxTeamId:77,childBpxTeamId:86},{parentBpxTeamId:77,childBpxTeamId:87},{parentBpxTeamId:88,childBpxTeamId:89},{parentBpxTeamId:89,childBpxTeamId:90},{parentBpxTeamId:91,childBpxTeamId:3},{parentBpxTeamId:93,childBpxTeamId:94},{parentBpxTeamId:93,childBpxTeamId:97},{parentBpxTeamId:93,childBpxTeamId:100},{parentBpxTeamId:93,childBpxTeamId:103},{parentBpxTeamId:93,childBpxTeamId:104},{parentBpxTeamId:93,childBpxTeamId:106},{parentBpxTeamId:93,childBpxTeamId:109},{parentBpxTeamId:93,childBpxTeamId:112},{parentBpxTeamId:93,childBpxTeamId:115},{parentBpxTeamId:94,childBpxTeamId:95},{parentBpxTeamId:95,childBpxTeamId:96},{parentBpxTeamId:95,childBpxTeamId:98},{parentBpxTeamId:95,childBpxTeamId:99},{parentBpxTeamId:97,childBpxTeamId:95},{parentBpxTeamId:100,childBpxTeamId:101},{parentBpxTeamId:101,childBpxTeamId:102},{parentBpxTeamId:101,childBpxTeamId:105},{parentBpxTeamId:103,childBpxTeamId:101},{parentBpxTeamId:104,childBpxTeamId:101},{parentBpxTeamId:106,childBpxTeamId:107},{parentBpxTeamId:107,childBpxTeamId:108},{parentBpxTeamId:109,childBpxTeamId:110},{parentBpxTeamId:110,childBpxTeamId:111},{parentBpxTeamId:112,childBpxTeamId:113},{parentBpxTeamId:113,childBpxTeamId:114},{parentBpxTeamId:115,childBpxTeamId:116},{parentBpxTeamId:116,childBpxTeamId:117},{parentBpxTeamId:118,childBpxTeamId:119},{parentBpxTeamId:119,childBpxTeamId:120},{parentBpxTeamId:121,childBpxTeamId:122},{parentBpxTeamId:121,childBpxTeamId:139},{parentBpxTeamId:121,childBpxTeamId:144},{parentBpxTeamId:122,childBpxTeamId:123},{parentBpxTeamId:122,childBpxTeamId:125},{parentBpxTeamId:122,childBpxTeamId:127},{parentBpxTeamId:122,childBpxTeamId:129},{parentBpxTeamId:122,childBpxTeamId:131},{parentBpxTeamId:122,childBpxTeamId:133},{parentBpxTeamId:122,childBpxTeamId:135},{parentBpxTeamId:122,childBpxTeamId:137},{parentBpxTeamId:123,childBpxTeamId:124},{parentBpxTeamId:125,childBpxTeamId:126},{parentBpxTeamId:127,childBpxTeamId:128},{parentBpxTeamId:129,childBpxTeamId:130},{parentBpxTeamId:131,childBpxTeamId:132},{parentBpxTeamId:133,childBpxTeamId:134},{parentBpxTeamId:135,childBpxTeamId:136},{parentBpxTeamId:137,childBpxTeamId:138},{parentBpxTeamId:139,childBpxTeamId:140},{parentBpxTeamId:139,childBpxTeamId:141},{parentBpxTeamId:139,childBpxTeamId:142},{parentBpxTeamId:139,childBpxTeamId:143},{parentBpxTeamId:144,childBpxTeamId:145},{parentBpxTeamId:144,childBpxTeamId:146},{parentBpxTeamId:147,childBpxTeamId:148},{parentBpxTeamId:149,childBpxTeamId:150},{parentBpxTeamId:151,childBpxTeamId:152},{parentBpxTeamId:151,childBpxTeamId:154},{parentBpxTeamId:151,childBpxTeamId:156},{parentBpxTeamId:151,childBpxTeamId:158},{parentBpxTeamId:151,childBpxTeamId:160},{parentBpxTeamId:151,childBpxTeamId:162},{parentBpxTeamId:151,childBpxTeamId:164},{parentBpxTeamId:151,childBpxTeamId:166},{parentBpxTeamId:151,childBpxTeamId:168},{parentBpxTeamId:151,childBpxTeamId:170},{parentBpxTeamId:151,childBpxTeamId:172},{parentBpxTeamId:151,childBpxTeamId:174},{parentBpxTeamId:152,childBpxTeamId:153},{parentBpxTeamId:152,childBpxTeamId:155},{parentBpxTeamId:152,childBpxTeamId:157},{parentBpxTeamId:152,childBpxTeamId:159},{parentBpxTeamId:152,childBpxTeamId:161},{parentBpxTeamId:152,childBpxTeamId:163},{parentBpxTeamId:152,childBpxTeamId:165},{parentBpxTeamId:152,childBpxTeamId:167},{parentBpxTeamId:152,childBpxTeamId:169},{parentBpxTeamId:152,childBpxTeamId:171},{parentBpxTeamId:152,childBpxTeamId:173},{parentBpxTeamId:152,childBpxTeamId:175},{parentBpxTeamId:154,childBpxTeamId:152},{parentBpxTeamId:156,childBpxTeamId:152},{parentBpxTeamId:158,childBpxTeamId:152},{parentBpxTeamId:160,childBpxTeamId:152},{parentBpxTeamId:162,childBpxTeamId:152},{parentBpxTeamId:164,childBpxTeamId:152},{parentBpxTeamId:166,childBpxTeamId:152},{parentBpxTeamId:168,childBpxTeamId:152},{parentBpxTeamId:170,childBpxTeamId:152},{parentBpxTeamId:172,childBpxTeamId:152},{parentBpxTeamId:174,childBpxTeamId:152},{parentBpxTeamId:176,childBpxTeamId:177},{parentBpxTeamId:177,childBpxTeamId:178},{parentBpxTeamId:177,childBpxTeamId:768},{parentBpxTeamId:178,childBpxTeamId:179},{parentBpxTeamId:180,childBpxTeamId:181},{parentBpxTeamId:180,childBpxTeamId:183},{parentBpxTeamId:180,childBpxTeamId:185},{parentBpxTeamId:180,childBpxTeamId:187},{parentBpxTeamId:180,childBpxTeamId:189},{parentBpxTeamId:180,childBpxTeamId:191},{parentBpxTeamId:181,childBpxTeamId:182},{parentBpxTeamId:183,childBpxTeamId:184},{parentBpxTeamId:185,childBpxTeamId:186},{parentBpxTeamId:187,childBpxTeamId:188},{parentBpxTeamId:189,childBpxTeamId:190},{parentBpxTeamId:191,childBpxTeamId:192},{parentBpxTeamId:193,childBpxTeamId:194},{parentBpxTeamId:193,childBpxTeamId:197},{parentBpxTeamId:194,childBpxTeamId:195},{parentBpxTeamId:195,childBpxTeamId:196},{parentBpxTeamId:197,childBpxTeamId:198},{parentBpxTeamId:198,childBpxTeamId:199},{parentBpxTeamId:200,childBpxTeamId:201},{parentBpxTeamId:200,childBpxTeamId:204},{parentBpxTeamId:201,childBpxTeamId:202},{parentBpxTeamId:202,childBpxTeamId:203},{parentBpxTeamId:204,childBpxTeamId:205},{parentBpxTeamId:204,childBpxTeamId:207},{parentBpxTeamId:204,childBpxTeamId:209},{parentBpxTeamId:204,childBpxTeamId:210},{parentBpxTeamId:205,childBpxTeamId:206},{parentBpxTeamId:207,childBpxTeamId:208},{parentBpxTeamId:211,childBpxTeamId:212},{parentBpxTeamId:211,childBpxTeamId:215},{parentBpxTeamId:211,childBpxTeamId:217},{parentBpxTeamId:211,childBpxTeamId:219},{parentBpxTeamId:211,childBpxTeamId:221},{parentBpxTeamId:211,childBpxTeamId:223},{parentBpxTeamId:211,childBpxTeamId:226},{parentBpxTeamId:211,childBpxTeamId:228},{parentBpxTeamId:211,childBpxTeamId:230},{parentBpxTeamId:211,childBpxTeamId:232},{parentBpxTeamId:211,childBpxTeamId:234},{parentBpxTeamId:211,childBpxTeamId:236},{parentBpxTeamId:211,childBpxTeamId:238},{parentBpxTeamId:211,childBpxTeamId:240},{parentBpxTeamId:211,childBpxTeamId:242},{parentBpxTeamId:211,childBpxTeamId:244},{parentBpxTeamId:211,childBpxTeamId:246},{parentBpxTeamId:212,childBpxTeamId:213},{parentBpxTeamId:213,childBpxTeamId:214},{parentBpxTeamId:215,childBpxTeamId:216},{parentBpxTeamId:217,childBpxTeamId:218},{parentBpxTeamId:219,childBpxTeamId:220},{parentBpxTeamId:221,childBpxTeamId:222},{parentBpxTeamId:223,childBpxTeamId:224},{parentBpxTeamId:223,childBpxTeamId:225},{parentBpxTeamId:226,childBpxTeamId:227},{parentBpxTeamId:228,childBpxTeamId:229},{parentBpxTeamId:230,childBpxTeamId:231},{parentBpxTeamId:232,childBpxTeamId:233},{parentBpxTeamId:234,childBpxTeamId:235},{parentBpxTeamId:236,childBpxTeamId:237},{parentBpxTeamId:238,childBpxTeamId:239},{parentBpxTeamId:240,childBpxTeamId:241},{parentBpxTeamId:242,childBpxTeamId:243},{parentBpxTeamId:244,childBpxTeamId:245},{parentBpxTeamId:246,childBpxTeamId:247},{parentBpxTeamId:248,childBpxTeamId:249},{parentBpxTeamId:249,childBpxTeamId:250},{parentBpxTeamId:249,childBpxTeamId:251},{parentBpxTeamId:252,childBpxTeamId:253},{parentBpxTeamId:253,childBpxTeamId:254},{parentBpxTeamId:255,childBpxTeamId:256},{parentBpxTeamId:255,childBpxTeamId:257},{parentBpxTeamId:263,childBpxTeamId:264},{parentBpxTeamId:264,childBpxTeamId:265},{parentBpxTeamId:266,childBpxTeamId:267},{parentBpxTeamId:267,childBpxTeamId:268},{parentBpxTeamId:270,childBpxTeamId:271},{parentBpxTeamId:271,childBpxTeamId:272},{parentBpxTeamId:273,childBpxTeamId:274},{parentBpxTeamId:274,childBpxTeamId:275},{parentBpxTeamId:275,childBpxTeamId:276},{parentBpxTeamId:275,childBpxTeamId:277},{parentBpxTeamId:275,childBpxTeamId:278},{parentBpxTeamId:275,childBpxTeamId:279},{parentBpxTeamId:280,childBpxTeamId:281},{parentBpxTeamId:281,childBpxTeamId:282},{parentBpxTeamId:283,childBpxTeamId:284},{parentBpxTeamId:284,childBpxTeamId:285},{parentBpxTeamId:286,childBpxTeamId:287},{parentBpxTeamId:287,childBpxTeamId:288},{parentBpxTeamId:289,childBpxTeamId:290},{parentBpxTeamId:290,childBpxTeamId:291},{parentBpxTeamId:290,childBpxTeamId:292},{parentBpxTeamId:290,childBpxTeamId:293},{parentBpxTeamId:290,childBpxTeamId:294},{parentBpxTeamId:290,childBpxTeamId:295},{parentBpxTeamId:290,childBpxTeamId:296},{parentBpxTeamId:290,childBpxTeamId:297},{parentBpxTeamId:290,childBpxTeamId:298},{parentBpxTeamId:290,childBpxTeamId:299},{parentBpxTeamId:290,childBpxTeamId:300},{parentBpxTeamId:290,childBpxTeamId:301},{parentBpxTeamId:290,childBpxTeamId:302},{parentBpxTeamId:290,childBpxTeamId:303},{parentBpxTeamId:290,childBpxTeamId:304},{parentBpxTeamId:290,childBpxTeamId:305},{parentBpxTeamId:290,childBpxTeamId:306},{parentBpxTeamId:290,childBpxTeamId:307},{parentBpxTeamId:290,childBpxTeamId:308},{parentBpxTeamId:290,childBpxTeamId:309},{parentBpxTeamId:290,childBpxTeamId:310},{parentBpxTeamId:290,childBpxTeamId:311},{parentBpxTeamId:290,childBpxTeamId:312},{parentBpxTeamId:290,childBpxTeamId:313},{parentBpxTeamId:290,childBpxTeamId:314},{parentBpxTeamId:290,childBpxTeamId:315},{parentBpxTeamId:290,childBpxTeamId:316},{parentBpxTeamId:290,childBpxTeamId:317},{parentBpxTeamId:290,childBpxTeamId:318},{parentBpxTeamId:290,childBpxTeamId:319},{parentBpxTeamId:290,childBpxTeamId:320},{parentBpxTeamId:290,childBpxTeamId:321},{parentBpxTeamId:290,childBpxTeamId:322},{parentBpxTeamId:290,childBpxTeamId:323},{parentBpxTeamId:290,childBpxTeamId:324},{parentBpxTeamId:290,childBpxTeamId:325},{parentBpxTeamId:290,childBpxTeamId:326},{parentBpxTeamId:290,childBpxTeamId:327},{parentBpxTeamId:290,childBpxTeamId:328},{parentBpxTeamId:290,childBpxTeamId:329},{parentBpxTeamId:290,childBpxTeamId:330},{parentBpxTeamId:290,childBpxTeamId:331},{parentBpxTeamId:290,childBpxTeamId:332},{parentBpxTeamId:290,childBpxTeamId:333},{parentBpxTeamId:290,childBpxTeamId:334},{parentBpxTeamId:290,childBpxTeamId:335},{parentBpxTeamId:290,childBpxTeamId:336},{parentBpxTeamId:290,childBpxTeamId:337},{parentBpxTeamId:290,childBpxTeamId:338},{parentBpxTeamId:290,childBpxTeamId:339},{parentBpxTeamId:290,childBpxTeamId:340},{parentBpxTeamId:290,childBpxTeamId:341},{parentBpxTeamId:290,childBpxTeamId:342},{parentBpxTeamId:290,childBpxTeamId:343},{parentBpxTeamId:290,childBpxTeamId:344},{parentBpxTeamId:290,childBpxTeamId:345},{parentBpxTeamId:290,childBpxTeamId:346},{parentBpxTeamId:290,childBpxTeamId:347},{parentBpxTeamId:290,childBpxTeamId:348},{parentBpxTeamId:290,childBpxTeamId:349},{parentBpxTeamId:290,childBpxTeamId:350},{parentBpxTeamId:290,childBpxTeamId:351},{parentBpxTeamId:290,childBpxTeamId:352},{parentBpxTeamId:290,childBpxTeamId:353},{parentBpxTeamId:735,childBpxTeamId:736},{parentBpxTeamId:735,childBpxTeamId:737},{parentBpxTeamId:735,childBpxTeamId:738},{parentBpxTeamId:735,childBpxTeamId:739},{parentBpxTeamId:735,childBpxTeamId:740},{parentBpxTeamId:735,childBpxTeamId:741},{parentBpxTeamId:735,childBpxTeamId:742},{parentBpxTeamId:735,childBpxTeamId:743},{parentBpxTeamId:735,childBpxTeamId:744},{parentBpxTeamId:735,childBpxTeamId:745},{parentBpxTeamId:735,childBpxTeamId:746},{parentBpxTeamId:735,childBpxTeamId:766},{parentBpxTeamId:747,childBpxTeamId:748},{parentBpxTeamId:747,childBpxTeamId:749},{parentBpxTeamId:747,childBpxTeamId:750},{parentBpxTeamId:747,childBpxTeamId:751},{parentBpxTeamId:747,childBpxTeamId:752},{parentBpxTeamId:747,childBpxTeamId:753},{parentBpxTeamId:747,childBpxTeamId:754},{parentBpxTeamId:747,childBpxTeamId:755},{parentBpxTeamId:761,childBpxTeamId:762},{parentBpxTeamId:762,childBpxTeamId:763},{parentBpxTeamId:762,childBpxTeamId:764},{parentBpxTeamId:767,childBpxTeamId:747},{parentBpxTeamId:767,childBpxTeamId:778},{parentBpxTeamId:767,childBpxTeamId:789},{parentBpxTeamId:768,childBpxTeamId:769},{parentBpxTeamId:768,childBpxTeamId:770},{parentBpxTeamId:768,childBpxTeamId:771},{parentBpxTeamId:778,childBpxTeamId:779},{parentBpxTeamId:778,childBpxTeamId:780},{parentBpxTeamId:778,childBpxTeamId:781},{parentBpxTeamId:778,childBpxTeamId:782},{parentBpxTeamId:778,childBpxTeamId:783},{parentBpxTeamId:778,childBpxTeamId:784},{parentBpxTeamId:778,childBpxTeamId:785},{parentBpxTeamId:778,childBpxTeamId:786},{parentBpxTeamId:778,childBpxTeamId:787},{parentBpxTeamId:778,childBpxTeamId:788},{parentBpxTeamId:789,childBpxTeamId:790},{parentBpxTeamId:789,childBpxTeamId:791},{parentBpxTeamId:789,childBpxTeamId:792}];
const parents = new Map(teams.map(team => [team.bpxId, { ...team, children: [] }]));
const lut = new Map(parents);
teamLinks.forEach(({ parentBpxTeamId, childBpxTeamId }) => {
lut.get(parentBpxTeamId).children.push(lut.get(childBpxTeamId));
parents.delete(childBpxTeamId);
});
const hierarchies = Array.from(parents.values());
console.log(hierarchies);
.as-console-wrapper{min-height:100%!important}
关于javascript - 基于平面数据构建嵌套层次结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57480031/
我在使用 gradle 构建一个特定应用程序时遇到问题。该应用程序可以用 eclipse 编译和构建,它在平板电脑上运行良好。当我尝试使用 Gradle 构建它时,“compileDebugJava”
我有一个 C 程序,是一位离开的开发人员留给我的。我试图弄清楚他到底在做什么,并将软件重新安排成更合乎逻辑的东西,这样我就可以更轻松地构建它。我正在使用 CMake 构建,而他使用的是 Make。 有
我刚开始阅读“Pro Spring MVC with web flow”,它附带了一个我想遵循的代码示例。 我要什么 - 我想像书中那样构建应用程序,使用 Gradle 有什么问题 - 我没用过 Gr
我希望有人已经这样做了。我正在尝试为我的一个 angular 2 项目在 teamcity 中建立一个连续的构建。在做了一些研究之后,我按照以下步骤操作: 构建步骤 1:为 teamcity 安装 j
我有一个旧的 ASP.Net 网站解决方案,看起来像: 当我在 Visual Studio 中构建解决方案时,我得到以下输出: ------ Build started: Project: C:\..
我使用 gulp-usref、gulp-if、gulp-uglify、gulp-csso 和 gulp-file-include 来构建我的应用程序。除了 HTML 保持原样外,构建中的一切都运行良好
我正在使用 ionic2 开发内部移动应用程序。我可以通过以下方式成功构建 ios: ionic build ios and ionic build ios --prod 但当我这样做时,它一直失败
我是一位经验丰富的 .NET/C# 开发人员,但对这里的几乎所有技术/库(包括 SQL/DB 工作)都是新手。 我正在开发一个具有 Azure/Entity Framework .NET 后端和可移植
我正在使用 VS 2008。我可以使用 IDE 成功编译我的解决方案。但是,当我尝试使用 devenv.com 构建它时,它失败并提示“错误:找不到项目输出组'(无法确定名称)的输出”。该组、其配置或
版本: ember.js 2.7,ember-data 2.7 ember-cli 2.9.1//同样适用于 ember-cli 2.7 node 6.9.1, npm 3.10.9//也适用于 no
我第一次修补 AzureDevops,设置一些 CI 任务。 我有一个公共(public)存储库(开源)和一个包含 3 个 F# 项目的解决方案(.sln)。该解决方案在 Windows/Mac/Li
目前 5.1.5 版本或 STLPort CVS 存储库似乎仍不支持 VS2008。如果有人已经完成了这项工作,那么如果可能的话,分享会很有用:) 同样,了解 VS2005 或 2008 x64 构建
我有一个 Python 2.7 项目,到目前为止一直使用 gfortran 和 MinGW 来构建扩展。我使用 MinGW,因为它似乎支持 Fortran 代码中的写入语句和可分配数组,而 MSVC
关闭。这个问题是off-topic .它目前不接受答案。 想改进这个问题? Update the question所以它是on-topic对于堆栈溢出。 9年前关闭。 Improve this que
我想知道为什么在 Zimbra Wiki 中只列出了构建过程的特定平台。这意味着不可能在其他 Linux 发行版上构建 Zimbra? Zimbra 社区选择一个特殊的 Linux 发行版来构建 Zi
我将在 Swift 中构建一个 CLI 工具。我用这个命令创建了项目 swift package init --type executable当我构建我的项目并解析 时读取别名 Xcode 中的参数并
我想为添加到 docker 镜像的文件设置文件权限。我有这个简单的 Dockerfile: FROM ubuntu:utopic WORKDIR /app RUN groupadd -g 1000 b
当我使用 clBuildProgram在我的 OpenCl 代码中,它失败并显示错误代码 -11,没有任何日志信息。 这是我的代码的样子: ret = clBuildProgram(program
我有一个底部导航栏,它有一个列表页面,该页面使用状态块。 class _MainPageState extends State { int _index = 0; @override Wi
我在本地计算机上使用Jenkins(Jenkins URL未通过Internet公开,但该计算机上已启用Internet。) 我进行了以下配置更改: 在Jenkins工具上安装了Git和Github插
我是一名优秀的程序员,十分优秀!