#swiftui #xcode12
#swiftui #xcode12
Вопрос:
Я получаю указанную выше ошибку, когда пытаюсь добавить к одному из моих массивов в моей модели профиля.
Вот мой код модели профиля:
import Foundation
struct UserProfile: Codable {
var firstName: String
var lastName: String
var age: Int16
var password: String
var email: String
}
extension UserProfile {
static var users: [UserProfile] {
[
UserProfile(firstName: "aryan", lastName: "chordia", age: 21, password: "123", email: "aryanchordia@gmail.com"),
UserProfile(firstName: "tyler", lastName: "duic", age: 21, password: "123", email: "tduic@andrew.cmu.edu"),
]
}
}
extension UserProfile {
struct Data {
var firstName: String = ""
var lastName: String = ""
var age: Int16 = 21
var password: String = ""
var email: String = ""
}
var data: Data {
return Data(firstName: firstName, lastName: lastName, age: age, password: password, email: email)
}
}
Вот как я пытаюсь добавить в свой массив UserProfile.users в SignUpView.swift
func signup() -> Bool {
let user = UserProfile(firstName: userData.firstName, lastName: userData.lastName, age: 21, password: userData.password, email: userData.email)
UserProfile.users.append(user)
return true
}
Любая помощь с благодарностью спасибо!
Ответ №1:
Здесь вы используете вычисляемое свойство. Следовательно, значение вычисляется, и вы не можете его установить.
Вы можете создать свой массив с помощью подобной функции или сразу объявить его с правильным значением:
static var users: [UserProfile] = {
[
UserProfile(firstName: "aryan", lastName: "chordia", age: 21, password: "123", email: "aryanchordia@gmail.com"),
UserProfile(firstName: "tyler", lastName: "duic", age: 21, password: "123", email: "tduic@andrew.cmu.edu"),
]
}()
Комментарии:
1. Хорошо, просто попробовал это, но я получаю сообщение об ошибке «ожидаемое объявление»
2. @AryanChordia Возможно, вы вставили код в неправильное положение не внутри класса или функции .. проверьте это.
3. Не уверен, что именно вы имеете в виду. Не могли бы вы подробнее остановиться на этом?
4. @davidev Разве это не должно быть без фигурных скобок и круглых скобок?