Live-Typescript:跨平台状态管理方案

为解决跨平台应用中状态管理问题,Live-Typescript 借鉴 LiveData 的设计理念,提供了一种基于 ObservableWatchable 对象的解决方案。

不同于 Kotlin 协程库中的 SateFlow 需要复杂的包装器才能在 Swift 和 JavaScript 等非 Kotlin 环境中使用,Live-Typescript 提供了一种轻量级的、语言无关的方式来实现数据观察和响应式更新。

安装

npm install @asoft-ltd/live-core

示例

const live = Live(1); 
const watcher = liveInt.watch((it) => { 
  console.log(`Watcher 1: ${it}`); 
}); 
// console: "Watcher 1: 1" 

live.value = 2; 
// console: "Watcher 1: 2"

工作原理

Live-Typescript 通过 ObservableWatchable 对象封装可观察的数据源,并提供 watch 方法用于订阅数据变化。当数据源发生变更时,所有订阅者都会收到通知并执行相应的回调函数。

优势

  • 跨平台:可在 Android、Web、桌面、iOS 等平台上使用;
  • 轻量级:无需复杂的包装器,易于集成;
  • 易用性:提供简洁直观的 API,便于开发者使用。
zip
live-typescript-master.zip 预估大小:18个文件
folder
live-typescript-master 文件夹
file
LICENSE 1KB
file
CHANGELOG.md 129B
folder
.github 文件夹
folder
workflows 文件夹
file
build.yml 361B
file
publish.yml 592B
file
README.md 1KB
folder
live-core 文件夹
file
.gitignore 418B
file
package.json 507B
file
package-lock.json 183KB
folder
src 文件夹
folder
main 文件夹
file
Watcher.ts 355B
file
Live.ts 748B
file
index.ts 83B
folder
test 文件夹
file
Justine.ui.test.ts 556B
file
Live.test.ts 885B
file
Justine.vm.ts 362B
file
tools.ts 143B
file
jest.config.js 71B
file
tsconfig.json 6KB
file
RELEASING.md 382B
zip 文件大小:58.32KB