我最近开始学习Gin,在README文件中包含以下代码:
v1 := router.Group("/v1")
{
v1.POST("/login", loginEndpoint)
v1.POST("/submit", submitEndpoint)
v1.POST("/read", readEndpoint)
}
我阅读了 Group 方法的源代码,如下所示:
IRouter interface {
IRoutes
Group(string, ...HandlerFunc) *RouterGroup
}
也许我误解了语法或在代码中遗漏了某些东西(在Go语言中我是很新的东西),但看起来它正在将一个块作为第二个参数传递,这在Go语言中可行吗?
您在其中看到的块{ ... }
仅仅是一个代码块,而不是任何参数。该Group
方法是可变参数的,可以接受任意数量的HandlerFunc
参数,但此处未传递任何内容。
由于Go是块作用域的,因此您可以使用块来创建有限变量作用域。由于这些块中没有声明,因此我在这里看不到该模式的任何用处,只是HandlerFunc
出于样式原因使分配缩进为一组。
显示代码块范围的示例:
http://play.golang.org/p/Kgpw1zCC7X
x := 42
{
x := 3
y := 4
fmt.Println("x inside block:", x) // prints 3
}
fmt.Println("x outside block:", x) // prints 42
// fmt.Println(y) // undefined: y
我有一个打字稿2类,目标是ES5。当我运行它时,我在控制台的主题行中得到了错误。Switch语句工作正常,但增量()和减量()方法不执行。
我有一个错误:警告:count():参数必须是实现可计数的数组或对象
问题内容: 我正在尝试使用jQuery和Ajax,并且使用了这种方法。但是我收到错误$ .toJSON不是firebug中的函数。问题出在哪里?我使用jquery 1.3.2。谢谢 问题答案: 没错 没有功能:http : //api.jquery.com/jQuery.toJSON。也许您想使用它。
我对从我的组件调用异步操作有问题,我想我做了工作所需的一切,但似乎没有,我使用了: 将调度映射到属性 在里面我回来了 操作:bindActionCreators(fetchPosts,调度) 我把它连接起来。 在所有这些事情之后,我试着在我的组件中调用这个动作- this . props . actions . fetch post() 结果我在控制台中收到这个错误- this.props.act
在这种情况下,我总是希望从第一个参数中推导出来,但看起来我没有很好地表达这一点。的类型是,因此: 有没有一种方法可以声明,这样第二个参数就不参与模板参数的推导了?
我希望在字符串中找到以开始和结束的字符序列,并用四个下划线替换它:。 例如,改变 到