登录
首页 >  Golang >  Go问答

如何在 go lang 中导出变量/属性

来源:stackoverflow

时间:2024-03-30 19:42:35 313浏览 收藏

哈喽!今天心血来潮给大家带来了《如何在 go lang 中导出变量/属性》,想必大家应该对Golang都不陌生吧,那么阅读本文就都不会很困难,以下内容主要涉及到,若是你正在学习Golang,千万别错过这篇文章~希望能帮助到你!

问题内容

我正在尝试在 golang 中创建一个 mvc web 应用程序,而不使用任何框架。我计划如何实现它是创建一个 http.server {} 的实例,并使用 http.newservemux() 作为处理程序,代码如下:

sm := http.NewServeMux()
    sm.Handle("/route1", http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
        http.ServeFile(w, r, "static/front-office/index.html")
    }))
    sm.Handle("/route2", handleSomething())
    sm.Handle("/route3", handleSomething())
    sm.Handle("/static/", http.StripPrefix("/static/", http.FileServer(http.Dir("static"))))


    frontEndUIServer := http.Server{
        Addr:    ":9000",
        Handler:  sm,
    }
    go frontEndUIServer.ListenAndServe()

然后使属性 sm 可导出,以便任何其他 go 文件可以导入它并在其上创建处理程序,从而实现我的控制器。由于我是 golang 的新手,所以我现在的问题是如何使属性 sm 可导出?


解决方案


当您问“如何使属性 sm 可导出”时,我假设您的意思是节点意义上的?如果是这样,您正在寻找的概念就是“包”。

https://www.golang-book.com/books/intro/11

这允许使用“导入”在其他包中引用一个包中的功能。请注意,您要访问的函数名称必须以大写字母开头,而小写字母只能在包中引用。

通常,Web 服务器是在“主”函数/包中创建的,控制器附加到您定义的路由。

这是一个很好的基本示例:https://astaxie.gitbooks.io/build-web-application-with-golang/en/03.2.html

理论要掌握,实操不能落!以上关于《如何在 go lang 中导出变量/属性》的详细介绍,大家都掌握了吧!如果想要继续提升自己的能力,那么就来关注golang学习网公众号吧!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>