我已經(jīng)進(jìn)口_ "github.com/mitchellh/mapstructure"進(jìn)入我的一個(gè)項(xiàng)目。但是,我無(wú)法利用該庫(kù)中包含的 Decode 函數(shù)將映射接口轉(zhuǎn)換為結(jié)構(gòu):var result Personerr := Decode(input, &result)if err != nil { panic(err)}此基本調(diào)用返回“未定義:解碼”錯(cuò)誤。除了導(dǎo)入還有什么可以做的嗎?
1 回答

躍然一笑
TA貢獻(xiàn)1826條經(jīng)驗(yàn) 獲得超6個(gè)贊
如果使用 _ 作為第一個(gè)參數(shù)導(dǎo)入包,則不能使用該包的任何函數(shù)或類型。_ 表示您導(dǎo)入包只是為了調(diào)用 init() 函數(shù)的次要效果。
另外,在這種情況下,您需要在函數(shù)之前使用包名,mapstructure.Decode。
或者,正如 Ainar-G 所指出的,您可以使用“?!?nbsp;而不是 _ 導(dǎo)入包時(shí)。通過(guò)這種方式,您將名稱導(dǎo)入“默認(rèn)”命名空間,允許直接使用解碼。但是,不建議這樣做,因?yàn)槟谑褂闷渌Q污染命名空間,并且現(xiàn)在或?qū)?lái)可能會(huì)發(fā)生沖突。
- 1 回答
- 0 關(guān)注
- 251 瀏覽
添加回答
舉報(bào)
0/150
提交
取消