第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在 golang 中使用 html

如何在 golang 中使用 html

Go
慕尼黑的夜晚無繁華 2023-07-10 10:06:33
我正在學(xué)習(xí) golang 并嘗試制作一個簡單的網(wǎng)站。這是我的文件夾結(jié)構(gòu)。- ui   |   - login.html- cmd   |   - main.go我的main.gopackage mainimport (    "html/template"    "net/http")var tmpl *template.Templatefunc init() {    tmpl = template.Must(template.ParseFiles("../ui/login.html"))}func main() {    http.HandleFunc("/", foo)    http.ListenAndServe(":8080", nil)}func foo(reswt http.ResponseWriter, req *http.Request) {    tmpl.ExecuteTemplate(reswt, "../ui/login.html", nil)}login.html<html>    <form method="POST">        <label for="uname">User Name</label>        <input type="text" id="uname" name="username">        <br>        <input type="submit">    </form></html>當(dāng)我執(zhí)行時main.go,我沒有收到錯誤。但什么也沒有l(wèi)ocalhost:8080。如果我保留main.go相同login.html的文件夾,這有效。為什么這個文件夾結(jié)構(gòu)不起作用?我已經(jīng)嘗試過[this SO thread],但這并不能解決我的問題1添加后的以下部件css不起作用。<style>input[type=submit]:active {  background: #cde5ef;  border-color: #9eb9c2 #b3c0c8 #b4ccce;  -webkit-box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.2);  box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.2);}</style><div class="login">  <h1>Login to Web App</h1>  <form method="post" action="">    <p><input type="text" name="login" value="" placeholder="Username or Email"></p>    <p><input type="password" name="password" value="" placeholder="Password"></p>    <p class="remember_me">      <label>        <input type="checkbox" name="remember_me" id="remember_me">        Remember me on this computer      </label>    </p>    <p class="submit"><input type="submit" name="commit" value="Login"></p>  </form></div><div class="login-help">  <p>Forgot your password? <a href="#">Click here to reset it</a>.</p></div>
查看完整描述

2 回答

?
繁星點點滴滴

TA貢獻(xiàn)1803條經(jīng)驗 獲得超3個贊

ParseFiles將文件列表的名稱存儲為模板名稱。這意味著,在您的情況下,login.html應(yīng)該在執(zhí)行中使用,而 while../ui/login.html不可用。


這是可行的,因為 login.html 已經(jīng)被命名為init()。


func init() {

    tmpl = template.Must(template.ParseFiles("../ui/login.html"))

}


func foo(reswt http.ResponseWriter, req *http.Request) {

    tmpl.ExecuteTemplate(reswt, "login.html", nil)

}


查看完整回答
反對 回復(fù) 2023-07-10
?
繁星淼淼

TA貢獻(xiàn)1775條經(jīng)驗 獲得超11個贊

對于泛型類型,您可以這樣調(diào)用


import(

"html/template"

)

// output html

func OutputHTML(w http.ResponseWriter, filename string, data interface{}) {

   t, err := template.ParseFiles(filename)

   if err != nil {

       http.Error(w, err.Error(), 500)

       return

   }

   if err := t.Execute(w, data); err != nil {

       http.Error(w, err.Error(), 500)

       return

   }

}

你這樣稱呼它


OutputHTML(w, "anyhtmlfile.html",nil)


查看完整回答
反對 回復(fù) 2023-07-10
  • 2 回答
  • 0 關(guān)注
  • 152 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號