我想解组Outer定义为:
type Outer struct {
Inner
Num int
}
type Inner struct {
Data string
}
func (i *Inner) UnmarshalJSON(data []byte) error {
i.Data = string(data)
return nil
}
Run Code Online (Sandbox Code Playgroud)
使用json.Unmarshal(data, &Outer{})似乎只使用Inner'sUnmarshalJSON并忽略该Num字段:https : //play.golang.org/p/WUBfzpheMl
我有一个笨拙的解决方案,我Num手动设置字段,但我想知道是否有人有更干净或更简单的方法来做到这一点。
谢谢!