我正在开发一个结构如下的 Go 项目:
pages (folder)
-> faculty (folder)
> instructors.go
> professors.go
generalpages.go (inside pages folder)
generalpages.go
Repository
使用以下声明处理我的模式结构:
type Repository struct {
App *config.AppConfig
}
所有常见页面(例如“主页”、“关于”)都可以正常使用这种类型的声明:
func (m *Repository) AboutPage(w http.ResponseWriter, r *http.Request) {
// some functionality
}
但是,如果我想构造我的页面并为我的InstructorsPage
(inside instructor.go
) 使用相同的声明,如下所示,它不起作用并且 VSCode 中的错误说:undeclared name
.
我的理解是一个对象应该在同一个包中可见,但它仍然不起作用。go build
没有抛出任何错误,但是当我使用路由包(chi
)时,它无法正确引用它。