import PY from '@/common/pinyin.js'
可以從下面鏈接獲取
https://www.cnblogs.com/supershare/p/14318957.html
//arr對應的名字數組
pySegSort(arr) {
let letters = "*ABCDEFGHJKLMNOPQRSTWXYZ".split('');
let segs = {};
let indexedList = []
// 創建一個以26個為key的對象
letters.forEach(item => {
segs[item] = [];
})
arr.forEach(item => {
// 取姓氏並返回姓氏的拼音首字母
let a = PY.ConvertPinyin(item.cusName).substr(0, 1)
// 在A-z之中寫入對應字母的對象數組中,否則傳入*對象數組里
let regComfirm = /[A-Za-z]/.test(a)
regComfirm ? segs[a.toLocaleUpperCase()].push(item) : segs['*'].push(item)
})
// 循環segs對象,轉換為indexList組件需要的格式
for (const [key, value] of Object.entries(segs)) {
value.length && indexedList.push({
letter: key,
data: value
})
}
indexedList.forEach(item => {
if (item.data.length > 1) {
// 這里是給相同拼音首字母進行排序
item.data = item.data.sort((a, b) => {
return a.localeCompare(b)
})
}
})
return indexedList;
},