DataLife 是一个可观察的数据存储类
import DataLife
final class ViewModel: DataLifeViewModel {
var myName = DataLife<String>()
func fetchMyName() {
myName.value = "Darth Vader"
}
}
import UIKit
final class ViewController: UIViewController {
@IBOutlet weak var nameLabel: UILabel!
private let viewModel = ViewModel()
override func viewDidLoad() {
super.viewDidLoad()
setupState()
setupFetchMyName()
}
private func setupFetchMyName() {
viewModel.fetchMyName()
}
private func setupState() {
viewModel.myName.addObserver(viewModel) { [weak self] name in
self?.nameLabel.text = name
}
}
}
您可以在这里查看演示
import PackageDescription
let package = Package(
name: "<Your Product Name>",
dependencies: [
.package(url: "https://github.com/heroesofcode/DataLife", .upToNextMajor(from: "2.0.0"))
],
targets: [
.target(
name: "<Your Target Name>",
dependencies: ["DataLife"]),
]
)
要贡献代码,只需 fork 此项目,然后打开一个 pull request。 欢迎贡献,提出想法,并在 issue 标签中提出任何问题。
DataLife 在 MIT 许可证下发布。 有关详细信息,请参见 LICENSE。