链式操作

作者: 菩提树下参悟 | 来源:发表于2022-08-28 22:41 被阅读0次

    链式操作用.来一步一步操作

        // 链式操作
        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)
        */
    }
    

    相关文章

      网友评论

        本文标题:链式操作

        本文链接:https://www.haomeiwen.com/subject/utzmbrtx.html