MVVM в Swift - свойства ViewModel, которые не имеют значения в модели - PullRequest
0 голосов
/ 01 октября 2019

У меня есть модель представления со свойствами, которые работают нормально - например:

struct ViewModel {
    let Names: [String]
    let attributedString: NSAttributedString
    let textAlignment: NSTextAlignment
}

Когда я запускаю это на «Модель A», все работает нормально, потому что, когда я возвращаю ViewModel, у меня есть все входные данные,Пример кода модели:

return ViewModel(Names: Names, attributedString: attributedText, textAlignment: .left)

Что если бы я хотел поместить в ViewModel свойство, которое не будет содержать данных для возврата в модель? Например, если я хочу добавить свойство «адрес» к ViewModel, но не ко всем моделям, которые содержали эту информацию? Возврат на странице модели выдает ошибку.

1 Ответ

1 голос
/ 01 октября 2019

Что за ошибка выдается? Но я думаю, вы должны пометить свойство адреса как Необязательное значение. Что-то вроде:

struct Model {
    let name: String
    let address: String?

    init(name: String, address: String? = nil) {
        self.name = name
        self.address = address
    }
}

let modelA = Model(name: "abc", address: "abc") // Model
let modelB = Model(name: "abc") // Model
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...