多年來我一直在使用 Node/Python 進行開發,在假期里我一直在努力擴展我對 Go 的了解。我有一個寵物項目,我一直在努力學習它。在閱讀gin-gonic 文檔時,我發現了我無法理解的語法。func main() {? ? router := gin.Default()? ? // Simple group: v1? ? v1 := router.Group("/v1")? ? {? ? ? ? v1.POST("/login", loginEndpoint)? ? ? ? v1.POST("/submit", submitEndpoint)? ? ? ? v1.POST("/read", readEndpoint)? ? }? ? // Simple group: v2? ? v2 := router.Group("/v2")? ? {? ? ? ? v2.POST("/login", loginEndpoint)? ? ? ? v2.POST("/submit", submitEndpoint)? ? ? ? v2.POST("/read", readEndpoint)? ? }? ? router.Run(":8080")}基本上,它看起來像該router.Group()方法接受一個結構,但我不太確定這里的機制是什么......它沒有包含在括號中。這個對象是如何被方法傳入/處理的Group?
1 回答

森林海
TA貢獻2011條經驗 獲得超2個贊
Go 編程語言規范
積木
塊是匹配大括號內的可能為空的聲明和語句序列。
聲明和范圍
Go 使用塊在詞法范圍內。
例如,v1.POST
方法調用語句組成一個塊:
// Simple group: v1
v1 := router.Group("/v1")
{
? ? v1.POST("/login", loginEndpoint)
? ? v1.POST("/submit", submitEndpoint)
? ? v1.POST("/read", readEndpoint)
}
這是塊的不尋常用法。
- 1 回答
- 0 關注
- 121 瀏覽
添加回答
舉報
0/150
提交
取消