目前,我有一个数组,当设置为:

   var updatedBeaconDetailsArray = [BeaconDataDetails]() { didSet {
        self.updateBeaconData(beacon: self.updatedBeaconDetailsArray)
        }
    }

我试图通过激活didSet来清除数组,因为didSet函数也绑定到了应用程序的其他部分,导致了奇怪的行为。
到目前为止我试过:
self.updatedBeaconDetailsArray = []
self.updatedBeaconDetailsArray.removeAll()

但他们都还激活了这个装置,有什么想法吗?

最佳答案

如果您检查了didSet中的数组是否为空,会怎么样?
类似于:

var updatedBeaconDetailsArray = [BeaconDataDetails]() {
    didSet {
        if !updatedBeaconDetailsArray.isEmpty {
            self.updateBeaconData(beacon: self.updatedBeaconDetailsArray)
        }
    }
}

关于arrays - 是否可以在不激活其DidSet属性的情况下使数组为空?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58209352/

10-08 23:26