2 回答

TA貢獻1866條經(jīng)驗 獲得超5個贊
使用_ "golang.org/x/net/html"
你導(dǎo)入包但你切斷了對它的所有訪問,這僅在你需要導(dǎo)入包執(zhí)行一些初始化而不是其他任何事情時使用。
使用net_html "golang.org/x/net/html"
是可以的,這正是您在這種情況下應(yīng)該做的。如果你仍然收到“html redeclared as imported package ...”錯誤,那么你使用的 IDE 可能有問題,但通常 Go 編譯器不會報錯,你的代碼應(yīng)該可以正常運行。
要親眼看看它是否在正常環(huán)境中工作,請轉(zhuǎn)到以下鏈接并嘗試運行該程序,您會看到它可以編譯并執(zhí)行。?
因此,如果net_html "golang.org/x/net/html"
沒有修復(fù)“html redeclared as imported package ...”錯誤,請嘗試提供有關(guān)您的環(huán)境的更多信息,例如您使用的 IDE、安裝的 Go 版本等。

TA貢獻1829條經(jīng)驗 獲得超13個贊
當你使用同名的多個包時,正如你所經(jīng)歷的,Go 會抱怨導(dǎo)入的包名已經(jīng)被聲明過。
PackageName為避免此問題,您必須像這樣自定義導(dǎo)入包:
import (
? ? "html"
? ? xhtml "golang.org/x/net/html"
)
然后你可以通過像這樣golang.org/x/net/html訪問它來使用公共方法和結(jié)構(gòu):xhtml
package main
import (
? ? "html"
? ? xhtml "golang.org/x/net/html"
)
func main() {
? ? // this will use `html` package
? ? htmlEscape := html.EscapeString("< &")
? ? // and this will use `golang.org/x/net/html` package
? ? xHtmlEscape := xhtml.EscapeString("< &")
}
- 2 回答
- 0 關(guān)注
- 238 瀏覽
添加回答
舉報