修复map数据key错误 + 获取map数据方法

This commit is contained in:
白茶清欢 2025-03-18 18:20:59 +08:00
parent beb8c74e8a
commit 2c73b9c034

View File

@ -183,9 +183,9 @@ func (ds *DynamicStruct) AddStructField(field reflect.StructField, fieldValue an
if field.Tag == "" {
field.Tag = reflect.StructTag(fmt.Sprintf(`json:"%v"`, field.Name))
}
ds.SetMapData(field.Name, fieldValue)
field.Name = String(field.Name).SnakeCaseToCamel() // 转成大驼峰, 保证对外可访问
ds.structFieldList = append(ds.structFieldList, field)
ds.SetMapData(field.Name, fieldValue)
}
// GetStructType 获取结构体的类型
@ -248,3 +248,8 @@ func (ds *DynamicStruct) Clear() {
func (ds *DynamicStruct) MarshalJSON() ([]byte, error) {
return json.Marshal(ds.mapData)
}
// MapData map数据
func (ds *DynamicStruct) MapData() (map[string]any) {
return ds.mapData
}