Go 项目中,非入口包如何访问兄弟包函数?

go 项目中,非入口包如何访问兄弟包函数?

非入口包访问兄弟包函数,实现小写函数调用

在如下项目结构中,如何在 app/blog/router.go 文件中使用 handle.go 里的2个函数 ahandler、bhandler?

gin_demo
├── app
│   └── blog
│       ├── handler.go
│       └── router.go  // 如何引入 handler.go 的函数?
├── go.mod
├── go.sum
├── main.go
└── routers
    └── routers.go

解决方案:

router.go和handler.go属于同一个包,因此不需要写 import 导入。可以在 router.go 中直接使用 handle.go 中的函数,包括没有开头大写导出的函数,例如 ahandler 和 bhandler。

router.go 代码:

package blog

import (
    "github.com/gin-gonic/gin"
)

func Routers(e *gin.Engine) {
    e.GET("/a", handler.aHandler)
    e.GET("/b", handler.bHandler)
}

以上就是Go 项目中,非入口包如何访问兄弟包函数?的详细内容,更多请关注其它相关文章!