我正在开发一个用于mysql的库/包装器。对于我的API的使用,我想象的是:
model
.Select("INTERNAL_ID")
.Select("EXTERNAL_ID")
.Find(1);
例如,以下功能:
func (model SQLModel) Select(selectString string) SQLModel
func (model SQLModel) Find(id int) interface{}
问题在于我无法将我的函数调用分成多行,因为go / fmt会在每次休息时抱怨:syntax error: unexpected ., expecting }
。
现在,我可以去:
model.Select("INTERNAL_ID").Select("EXTERNAL_ID").Find(1)
但随着API的增长(在哪里,加入,求和等......),它将很快变得难以阅读。
那么,如何在GO中分割函数调用?
谢谢,
答案 0 :(得分:6)
点必须位于行尾:
model.
Select("INTERNAL_ID").
Select("EXTERNAL_ID").
Find(1)