慕尼黑8549860
2023-06-01 14:29:30
import ( "net/url")type Route struct{ filepath string url url.URL}func hello(){ fmt.Println("Hello World")}func main() { routes := map[Route]func{ Route{url.Parse("/home"), "/var/www/index.html"} : hello }}我無法弄清楚是什么語法錯誤阻止我將 Route 結(jié)構(gòu)映射到函數(shù)。我收到此錯誤:./main.go:24:26: 語法錯誤:意外{,期待(./main.go:25:8: 語法錯誤:意外的 {,需要逗號或 )
1 回答

皈依舞
TA貢獻1851條經(jīng)驗 獲得超3個贊
類型不是
func
但是func()
你需要照顧的
url.Parse
錯誤
有重構(gòu)代碼:
package main
import (
"fmt"
"net/url"
)
type Route struct {
filepath string
url *url.URL
}
func hello() {
fmt.Println("Hello World")
}
func mustParse(rawURL string) *url.URL {
parsedURL, err := url.Parse(rawURL)
if err != nil {
panic(err)
}
return parsedURL
}
func main() {
routes := map[Route]func(){
Route{"/var/www/index.html", mustParse("/home")}: hello,
}
fmt.Printf("routes: %+v\n", routes)
}
如果您不知道輸入配置,帶有 panic 的解決方案可能不是最好的。
- 1 回答
- 0 關(guān)注
- 127 瀏覽
添加回答
舉報
0/150
提交
取消