可以通过if条件执行多个赋值,如下面的代码?
func SendEmail(url, email string) (string, error) {
genUri := buildUri()
if err := setRedisIdentity(genUri, email); err != nil; genUrl, err := buildActivateUrl(url, genUri); {
return "", err
}
return "test", nil
}
答案 0 :(得分:6)
没有。只有一个简单的陈述'根据{{3}}
,允许在if语句的开头spec方法是多次测试,可能会返回错误,因此我认为您需要以下内容:
func SendEmail(url, email string) (string, error) {
genUri := buildUri()
if err := setRedisIdentity(genUri, email); err != nil {
return "", err
}
if genUrl, err := buildActivateUrl(url, genUri); err != nil {
return "", err
}
return "test", nil
}
答案 1 :(得分:5)
看起来你想要这样的东西:
package main
import "fmt"
func a(int) int { return 7 }
func b(int) int { return 42 }
func main() {
if x, y := a(1), b(2); x > 0 && x < y {
fmt.Println("sometimes")
}
fmt.Println("always")
}
输出:
sometimes
always