编译器错误表达过于复杂,要解决

问题描述:

我收到此错误:编译器错误表达过于复杂,要解决

Expression was too complex to be resolved in reasonable time

请帮助我。我该怎么办?我在前面的视图控制器中使用了相同的行,并且工作完美。

let url = URL(string: self.con+"loc?email="+email+"&lat="+lati+"&log="+logi!) 

此错误背后的原因是,当你使用太多的+号的Xcode变得混乱。总是尝试使用字符串插值:

let paramsStr = "loc?email=\(email)&lat=\(lati)&log=\(logi)" 

而且这个话题很好看的: https://stackoverflow.com/a/29931329/3403364

打破它更小的表达式。斯威夫特编译器是太愚蠢了解您的表达式))

像这样:

let paramsStr = "loc?email=" + email + "&lat=" + lati + "&log=" + logi let url = URL(string: self.con + paramsStr)

+0

感谢它的工作:) –