我很少看到有人在didSet
中使用[weak self]
。这是有原因的吗?
我尝试在变量的 didSet
中使用 [weak self]
:
var data: Dictionary<String, Any>! { // [1]
didSet { [2]
self?.layoutSubviews()
}
}
无论我将 [weak self] in
放在 [1] 还是 [2],我仍然得到错误:Use of unresolved identifier weak
这是为什么呢?将 [weak self]
用于 didSet
是否违法?
问候,
最佳答案
didSet
不是闭包,您不能对它使用闭包语法。
没有理由在那里使用weak self
。 didSet
处理程序不会像方法不创建所有权循环那样创建所有权循环。
关于Swift - didSet 中的弱 self ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43693703/