Golang html模板无法在html文件中调用javascript文件

Golang html模板无法在html文件中调用javascript文件,第1张

概述在 HTML文件调用它后,我将React应用程序与Webpack捆绑在一起.但是,当我使用Golang和html / template查看HTML文件时,它会出错. 我的HTML文件:index.html <!DOCTYPE html><html lang="en"> <head> <meta charset="UTF-8"> <title>Note A 在 HTML文件中调用它后,我将React应用程序与Webpack捆绑在一起.但是,当我使用Golang和HTML / template查看HTML文件时,它会出错.
我的HTML文件:index.HTML

<!DOCTYPE HTML><HTML lang="en">    <head>        <Meta charset="UTF-8">        <Title>Note App</Title>    </head>    <body>        <div ID="root"></div>        <script src="public/bundle.Js"></script>    </body></HTML>

我的Golang文件:index.go

package mainimport (    "net/http"    "HTML/template"    "path/filepath")func handle(w http.ResponseWriter,r *http.Request) {    fp := filepath.Join("vIEws","index.HTML")    t := template.Must(template.Parsefiles(fp))    t.Execute(w,nil)}func main() {    http.HandleFunc("/",handle)    http.ListenAndServe(":8080",nil)}
解决方法 问题似乎是你正在启动一个只提供HTML模板的服务器 – 而不是脚本.当浏览器尝试加载脚本时,服务器将返回索引页.

看看https://www.alexedwards.net/blog/serving-static-sites-with-go;这篇文章讨论了如何提供静态文件.

为了您的目的,您可以通过将以下行添加到main方法的开头来获得:

fs := http.fileServer(http.Dir("public"))http.Handle("/public/",http.StripPrefix("/static/",fs))

这将加载目录中的任何文件,“public”(相对于已编译的可执行文件),并在url / public / path / to / file中提供它们

请注意:默认情况下,这将启用公共目录的目录列表(用户将能够看到该目录和所有子目录中的文件列表).有关如何禁用目录列表的信息,请查看此问题的答案:https://stackoverflow.com/a/40718195/6346483

总结

以上是内存溢出为你收集整理的Golang html模板无法在html文件中调用javascript文件全部内容,希望文章能够帮你解决Golang html模板无法在html文件中调用javascript文件所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/1264988.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-08
下一篇2022-06-08

发表评论

登录后才能评论

评论列表(0条)

    保存