链式操作用.
来一步一步操作
// 链式操作
put1, err := client.Index().
Index(indexStr).
Type("xxx").
BodyJson(data).
Do(context.Background())
index:索引
data一定是json数据
type:数据表,当成一个参数,按照ip,不同的机器不同的表里
示例:
package main
import "fmt"
// 链式操作
type student struct{
name string
age int
}
// walk ....
func (s *student)walk() *student{
fmt.Println("I am walking...")
return s
}
// read ...
func (s *student)read(){
fmt.Println("I am reading...")
}
// sleep...
func (s *student)sleep()*student{
fmt.Println("I am sleepping...")
return s
}
//
func (s *student)sing()int{
fmt.Println("I am reading...")
return 1
}
func main(){
var stu student
fmt.Println(stu.walk().sleep())
//fmt.Println(stu.read().walk())// 如果read是没有返回值是不能使用链式操作
fmt.Println(stu.sing().walk())// 如果返回值不是下个链接的同一种数据类型也会报错
/*
# command-line-arguments
.\main.go:36:25: stu.sing().walk undefined (type int has no field or method walk)
*/
}
网友评论