Swift3 “错误”;类型的值。。。“没有成员”;在惰性属性闭包中调用self时
为什么下面的Swift3代码会导致错误Swift3 “错误”;类型的值。。。“没有成员”;在惰性属性闭包中调用self时,swift3,xcode8,Swift3,Xcode8,为什么下面的Swift3代码会导致错误类型值(NSObject)->()->MyView在Xcode 8中没有成员getSomeButton lazy var someButton = { return self.getSomeButton // ERROR }() private func getSomeButton() -> UIButton { return UIButton() } 实际上,错误消息完全是误导性的,应该是类似于不能推断闭包返回类型的内容。指定变量
类型值(NSObject)->()->MyView在Xcode 8中没有成员getSomeButton
lazy var someButton = {
return self.getSomeButton // ERROR
}()
private func getSomeButton() -> UIButton {
return UIButton()
}
实际上,错误消息完全是误导性的,应该是类似于
不能推断闭包返回类型的内容。指定变量类型可以解决这个问题。希望这能帮助别人
lazy var someButton: UIButton = {
return self.getSomeButton // OK
}()