解决办法:

    mutating func mapping(mapper: HelpingMapper) {
        // 确保 environmentalFactor 字段的处理:"1666.00" 被识别成了double,但是"1234" 会被正常识别成字符串
        mapper <<< self.environmentalFactor <-- "environmentalFactor"
    }
///蓝牙信号标定-查询 环境因子
struct EnvironmentalFactorModel:HandyJSON{
    ///主键id
    var id: Int64 = -1
    ///手机系统类型0:ios1:安卓
    var os: Int = 0
    ///手机型号
    var phoneModel: String = ""
    ///机型基准值
    var baseValue: String = ""
    ///机型环境因子
    var environmentalFactor: String? = nil
    ///是否默认数据0-非默认数据、1-默认数据
    var defaultData: Int = 0
    ///创建时间
    var createTime: Date?
    mutating func mapping(mapper: HelpingMapper) {
        // 确保 environmentalFactor 字段的处理:"1666.00" 被识别成了double,但是"1234" 会被正常识别成字符串
        mapper <<< self.environmentalFactor <-- "environmentalFactor"
    }
}

 

 

 

原因:正常"1234"  或"1000" 都能解析成字符串, 但是特殊的字符串  "123.00"  "22.99" 等字符串在序列化后,会被框架自动识别成double
报错:

environmentalFactor String? <cannot decode string: invalid discriminator> some

 

posted on 2025-05-22 08:20  懂事长qingzZ  阅读(19)  评论(0)    收藏  举报