IReadOnlyObservableValue<T>¶
- 种类:
interface - 命名空间:
Runestone.AesirArchitecture - 程序集:
Runestone.AesirArchitecture
类型参数
T— 属性值类型
声明¶
只读可观察属性接口。 View 层通过此接口添加监听,不能修改值。
备注
这是 View 层使用的只读接口,只能订阅变更不能修改值。 AddListenerAndInvoke 在添加监听后立即触发一次当前值,适用于 View 初始化时同步显示。
InvokeEvent 强制触发通知,用于值未变但需要刷新的场景。
属性¶
| 名称 | 描述 |
|---|---|
Value |
— |
Value¶
方法¶
| 名称 | 描述 |
|---|---|
AddListener(Action<T>) |
添加监听者。回调参数为新值。 |
AddListenerAndInvoke(Action<T>) |
添加监听并立即触发一次当前值,用于初始化时同步监听方状态。 |
ClearListeners() |
清空所有监听。 |
InvokeEvent() |
触发值变更通知,用于强制刷新监听方状态。 |
RemoveListener(Action<T>) |
移除监听者。 |
AddListener(Action)¶
添加监听者。回调参数为新值。
参数
| 名称 | 类型 | 说明 |
|---|---|---|
callback |
Action<T> |
值变更时调用的回调函数,参数为变更后的新值。 |
返回值
| 类型 | 说明 |
|---|---|
AutoRemoveListenerHandle |
返回一个 AutoRemoveListenerHandle,释放后自动移除监听,避免手动管理生命周期。 |
AddListenerAndInvoke(Action)¶
添加监听并立即触发一次当前值,用于初始化时同步监听方状态。
参数
| 名称 | 类型 | 说明 |
|---|---|---|
callback |
Action<T> |
值变更时调用的回调函数,参数为变更后的新值。 |
返回值
| 类型 | 说明 |
|---|---|
AutoRemoveListenerHandle |
返回一个 AutoRemoveListenerHandle,释放后自动移除监听。 |
ClearListeners()¶
清空所有监听。
备注
清除全部监听引用,防止因监听者未释放导致的内存泄漏。清除的是监听者而非值本身。 供持有只读接口的 View / Presenter 在对象池对象归还前统一摘除全部监听: 实现类型均为 sealed,无法经继承补出该能力,只读接口暴露本成员是"只持有接口"场景下的唯一入口。
InvokeEvent()¶
触发值变更通知,用于强制刷新监听方状态。
RemoveListener(Action)¶
移除监听者。
参数
| 名称 | 类型 | 说明 |
|---|---|---|
callback |
Action<T> |
先前通过 AddListener 注册的回调函数。 |
Additional Notes¶
首个
## Additional Notes是增量生成文档标识符,请勿修改标题级别和内容!本文档由Script Doc Generator辅助生成。