订阅成员状态

reactive#subscribe() 方法提供了订阅成员状态变更的能力, 当被订阅的成员的状态发生变更,回调函数会被触发。我们可以基于订阅/发布模式在视图上实时反映成员的当前状态,具体请看下面的示例。

除了模型层提供的订阅方法外,为了方便不同背景的开发人员, Reactive Form 还提供了特定技术栈下订阅成员状态变更的方式。 提供了基于 React Hooks 的实现, 以及基于 Vue Composition API 的实现。

在 React 中订阅成员状态

UI.React.hooks.useReactive() 是 Reactive Form 提供的可直接在 React 组件中使用的, 用来订阅成员状态变更的 React Hook。其实现的基础是 reactive#subscribe() 方法,在其上封装了伴随 React 组件生命周期自动订阅/解除订阅的处理过程。具体用法如下。

在 Vue 中订阅成员状态

UI.Vue.composables.useReactive() 是 Reactive Form 提供的可直接在 Vue 组件中使用的, 用来订阅成员状态变更的 Composition API。其实现的基础是 reactive#subscribe() 方法,在其上封装了伴随 Vue 组件生命周期自动订阅/解除订阅的处理过程。 订阅的成员状态保存在一个 shallowRef 中。 具体用法如下。

小结