From 2c73b9c034188ed73c8d0a59702fe8599ff7ad17 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=99=BD=E8=8C=B6=E6=B8=85=E6=AC=A2?= Date: Tue, 18 Mar 2025 18:20:59 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8Dmap=E6=95=B0=E6=8D=AEkey?= =?UTF-8?q?=E9=94=99=E8=AF=AF=20+=20=E8=8E=B7=E5=8F=96map=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dynamic_struct.go | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/dynamic_struct.go b/dynamic_struct.go index 29d9d65..f3e81cf 100644 --- a/dynamic_struct.go +++ b/dynamic_struct.go @@ -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 +}