在SwiftUI中使用MVVM架构模式可以帮助我们更好地管理数据和UI之间的关系,使代码更加清晰和可维护。下面是一些基本的步骤指导您如何在SwiftUI中使用MVVM架构模式:
struct User {
var id: Int
var name: String
}
class UserViewModel: ObservableObject {
@Published var users: [User] = []
func fetchUsers() {
// 这里可以用来从网络请求数据或者从本地数据库获取数据
self.users = [
User(id: 1, name: "Alice"),
User(id: 2, name: "Bob")
]
}
}
struct UserListView: View {
@ObservedObject var viewModel = UserViewModel()
var body: some View {
List(viewModel.users) { user in
Text(user.name)
}
.onApper {
viewModel.fetchUsers()
}
}
}
在这个例子中,我们创建了一个UserListView来显示用户列表,它观察UserViewModel的数据变化并在视图出现时调用fetchUsers()方法获取数据。
通过使用MVVM架构模式,我们可以更好地分离数据和UI,并使代码更加清晰和可维护。同时,ViewModel还可以帮助我们处理数据的逻辑操作,使得我们的视图更加简洁和易于测试。