Переменная - didSet и willSet
Я понимаю как пользоваться didSet
а также willSet
для переменных, но не совсем почему. Когда я должен использовать эти методы и почему?
Обычно, когда вы обновляете значение, у вас есть какая-то кнопка, например, где вы обновляете textField
а затем установить значение переменной на textFields
например. Если я хочу передать что-то другому viewController
или я делаю это в действии кнопки.
Итак, мой вопрос:
Когда и почему я должен использовать didSet
а также willSet
для моих переменных?
2 ответа
Иногда вы хотите наблюдать изменение значения переменной. И вот когда didSet
а также willSet
полезны
didSet
вызывается после изменения значения, и вы можете использовать его, чтобы уведомить какого-либо менеджера об этом или сделать все, что вам нужно.
willSet
иногда используется для изменения значения до того, как оно будет передано переменной. Например, вы получаете String
это временная метка с сервера, и вы хотите преобразовать ее в читаемый текст даты.
Когда вам нужно наблюдать за изменением значения для переменной, вам нужно использовать didset/willset переменной.
willSet - вызывается непосредственно перед сохранением значения. didSet - вызывается сразу после сохранения нового значения.