VUE QQ音乐 歌手列表数据结构变更处理

引入pinyin
groupBy详见

import pinyin from 'pinyin'

export function formatList(arr, keyword) {
  arr.forEach((item,index)=>{
    item.nameFirstChat = pinyin(item[keyword], {
        // heteronym: true, // 启用多音字模式
        // segment: true, // 启用分词,以解决多音字问题。
        style: pinyin.STYLE_NORMAL
    })[0][0].charAt(0).toUpperCase();
  })

  arr = arr.groupBy('nameFirstChat');

  return arr;
}

Array.prototype.groupBy = function (prop) {
  return this.reduce(function (groups, item) {
    var val = item[prop];
    groups[val] = groups[val] || [];
    groups[val].push(item);
    return groups;
  }, {});
}
    原文作者:数字字母下划线
    原文地址: https://segmentfault.com/a/1190000017054630
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞