收藏
回答

sort排序10之后就无效了,有什么解决方法?

如图,根据复选框选中数据的key查找出对应的数据,然后用在下面比例里面,选出来的数据想要根据选择size的key排序。10之前能正常排序,后面就失效了。。。。。有什么解决方法么?

    getSize(event) {
        const { key } = event.currentTarget.dataset;
        this.setData({
            [key]: event.detail,
        })
        console.log("sizeData",this.data.sizeData)
        this.desc()
    },
    desc(){//根据选择的key转换为size,并进行排序
        let sizeData = this.data.sizeData//根据选出值得Key为条件排序
        sizeData.sort(function(a,b){
            if(a>b){return 1}else{return -1}
        })
        let data = this.data.size//源数值
        let arrSize = []//结果
        data.forEach(function(elem,index,array){
            for (var i = 0 ; i<sizeData.length;i++){
                if(index == sizeData[i]){
                    arrSize[i] = elem
                }} })
        this.setData({
            arrSize:arrSize
        })
        console.log("arrdata:",arrSize)
    },
回答关注问题邀请回答
收藏

1 个回答

  • So.
    So.
    2021-12-04

    已解决,换种写法就可以了

            // sizeData.sort(function(a,b){
            //     if(a>b){return 1}else{return -1}
            // })
            // let arr1 = 
            sizeData.sort((a, b) =>a - b)  
    
    2021-12-04
    有用
    回复
登录 后发表内容