ValueCoordinator
示例
要运行示例项目,请先克隆仓库,然后在 Example 目录下运行 pod install
。
安装
ValueCoordinator 通过 CocoaPods 提供。要安装它,请简单地添加以下行到您的 Podfile 中:
pod 'ValueCoordinator'
用法
- 将
@Coordinated
属性添加到第一个“持有”数据的实体。
class ParentViewModel {
@Coordinated private var someValue = "Initial value"
}
- 将
@ValueProviding
属性(值提供商)添加到第二个实体。
class ChildViewModel {
@ValueProviding var someValue = "Second value"
}
- 将值提供商与协调值绑定。现在结果值由第二个实体确定。
parentViewModel.$someValue = childViewModel.$someValue
可以通过禁用 isActive
标志来关闭值提供商。
可选地,您可以创建自己的 ValueCoordinator
以通过组合几个提供者的值来自定义确定结果值的方法。
- 当值提供商反初始化时,对结果值的管理权将返回到堆栈中之前的服务提供者。在此示例中,控制权返回到初始协调器。
值提供者堆栈可以根据需要增加。例如,如果您使用导航控制器,您可以每个下一步屏幕都可以是一个值协调器并定义结果协调值。
作者
Max Sol,[email protected]
许可
ValueCoordinator 以 MIT 许可证提供。有关更多信息,请参阅 LICENSE 文件。