ios版本与安卓版本使用以下代码出现两种不同的表现形式:
if((!zh[i-1] || zh[i-1].localeCompare(item2.name,'zh') <= 0) && item2.name.localeCompare(zh[i],'zh') == -1) {
curr.names.push(item2);
}
源码 :
function pySegSort(arr) { //通讯录数据分组排列
if(!String.prototype.localeCompare)
return null;
var letters = "#ABCDEFGHJKLMNOPQRSTWXYZ".split('');
var zh = "阿八嚓哒妸发旮哈讥咔垃痳拏噢妑七呥扨它穵夕丫帀".split('');
var segs = [];
var curr;
letters.forEach(function(item,i){
curr = {letter: item, names:[]};
arr.forEach(function(item2,j){
if(item2.name.substring(1,0) == letters[i-1]){
curr.names.push(item2);
curr.letter=letters[i-1]
}
if((!zh[i-1] || zh[i-1].localeCompare(item2.name,'zh') <= 0) && item2.name.localeCompare(zh[i],'zh') == -1) {
curr.names.push(item2);
console.log(item2,'item2')
}
});
if(curr.names.length) {
segs.push(curr);
curr.names.sort(function(a,b){
return a.name.localeCompare(b.name);
});
}
});
return segs;
}
这个问题一直都有,属于操作系统之间的差异问题。这种原生方法上的问题暂时还不好修复。
已解决,谢谢
怎么解决的
开发工具正常显示排名分组,但是安卓机出现分组混乱现象:如图
开发工具以及ios真机测试显示正常:
安卓真机测试(小米 5s):
可以参考这篇1楼老哥的方式
https://developers.weixin.qq.com/community/develop/doc/00046873d249a08ed719daf7356000
你好,请提供一下出现问题的机型和微信版本,以及能复现问题的简单代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)。
wechatide://minicode/nf8JxIms7W2I 有没有测试出来啊
官网的测试呢,什么时候修复啊