github.com/zhongdalu/gf@v1.0.0/geg/util/gconv/gconv_struct3.go (about) 1 package main 2 3 import ( 4 "fmt" 5 "github.com/zhongdalu/gf/g" 6 "github.com/zhongdalu/gf/g/util/gconv" 7 ) 8 9 // 演示slice类型属性的赋值 10 func main() { 11 type User struct { 12 Scores []int 13 } 14 15 user := new(User) 16 scores := []interface{}{99, 100, 60, 140} 17 18 // 通过map映射转换 19 if err := gconv.Struct(g.Map{"Scores": scores}, user); err != nil { 20 fmt.Println(err) 21 } else { 22 g.Dump(user) 23 } 24 25 // 通过变量映射转换,直接slice赋值 26 if err := gconv.Struct(scores, user); err != nil { 27 fmt.Println(err) 28 } else { 29 g.Dump(user) 30 } 31 }