繁体   English   中英

我的 array.map 函数中缺少什么?

[英]what is missing in my array.map function?

我有一张带 v-for 的桌子。 (添加到代码段)但我想使用Array.map将一个数组映射到另一个数组。 我需要我的第一列 networkTeam.source 来显示颜色而不是数字。 我尝试在方法中使用 .map 但它不起作用,并且我在控制台中没有收到任何错误。

你能帮我弄清楚我的功能有什么问题吗? 提前致谢

 data(){ networkTeams: {}, sources: { 1: 'green', 2: 'blue', 3: 'pink', 4: 'yellow', 5: 'orange', 6: 'blue' }, methods: { fixedNetworkTeams(teamId) { return this.networkTeams(teamId).data.map(u => { return { ...u, source: this.sources[u.source]}; }); },
 <-- table no longer works --> <tr v-for="networkTeam in fixedNetworkTeams" :key="team.id + networkTeam.id" :class="{ odd2: networkTeam.id % 2 !== 0 }" > <td> <span> {{ networkTeam.source }} </span> </td> <td class="text-center data-column"> <span> {{ networkTeam.accountId }} </span> </td> <td class="text-nowrap text-left breakAll"> <span> {{ networkTeam.name }}</span> </td> </tr> <-- table before .map that works --> <tr v-for="(networkTeam) in networkTeams[team.id].data" :key="team.id + networkTeam.id" :class="{ odd2: networkTeam.id % 2 !== 0 }" > <td> <span> {{ networkTeam.source }} </span> </td> <td class="text-center data-column"> <span> {{ networkTeam.accountId }} </span> </td> <td class="text-nowrap text-left breakAll"> <span> {{ networkTeam.name }}</span> </td> </tr>

从对象访问团队应该使用[]完成:

fixedNetworkTeams(teamId)
{     
    return this.networkTeams[teamId].data.map(u => 
    {
        return { ...u, source: this.sources[u.source]};
    });
}

您应该在迭代集合时提供您的team.id

<tr v-for="networkTeam in fixedNetworkTeams(team.id)"
    :key="team.id + networkTeam.id"
    :class="{ odd2: networkTeam.id % 2 !== 0 }"
>  

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM