Skip to content

Commit 61eecc4

Browse files
committed
docs: update motiion doc
1 parent dd01f68 commit 61eecc4

File tree

2 files changed

+91
-75
lines changed

2 files changed

+91
-75
lines changed

packages/guide/motion.cn.md

Lines changed: 32 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -102,14 +102,16 @@ MVVM 框架的最大优势在于:当 Model 发生变化时,View 会自动更
102102

103103
[fluth](https://fluthjs.github.io/fluth-doc/) 采用类 Promise 的流式编程范式,Promise 是前端最常接触的异步流式编程范式,**类 Promise 的流式编程范式极大地降低了流式编程的门槛**,让流的大规模使用成为可能。
104104

105-
fluth 流和 promise 的差异点:
105+
::: details fluth 流和 promise 的差异点:
106106

107107
- 相比 promise,fluth 可以不断发布并且支持取消定订阅
108108
- 相比 promise,fluth 同步执行 then 方法,及时更新数据
109109
- 相比 promise,fluth 保留每个订阅节点的数据并可直接访问
110110
- 相比 promise,fluth 完全支持 PromiseLike
111111

112-
fluth 流和 rxjs 的差异点:
112+
:::
113+
114+
::: details fluth 流和 rxjs 的差异点:
113115

114116
- fluth 上手非常简单,是类 promise 的流式编程库,只要会使用 promise 就可以使用
115117
- fluth 的流是 hot、multicast 的,而 rxjs 的流还具备 cold、unicast 的特性
@@ -118,7 +120,34 @@ fluth 流和 rxjs 的差异点:
118120
- fluth 订阅节点存在和 promise 类似的 status 状态
119121
- fluth 可以添加插件来扩展流的功能和添加自定义行为
120122

121-
fluth 为每个流节点保存了逻辑处理后的数据,让流节点既可以承载逻辑也可以承载数据,可以成为**替代 ref、reactive 响应式数据的基础单元**
123+
:::
124+
125+
fluth 为每个流节点保存了逻辑处理后的数据,让流节点既可以承载逻辑也可以承载数据,如下所示:
126+
127+
```typescript
128+
import { $ } from "fluth";
129+
130+
const userInfo$ = $({ name: "fluth", age: 18, role: "admin" });
131+
132+
const isAdult$ = userInfo$.thenImmediate((value) => value.age >= 18);
133+
134+
const isAdmin$ = userInfo$.thenImmediate((value) => value.role === "admin");
135+
136+
userInfo$.value; // { name: "fluth", age: 18, role: "admin" }
137+
isAdult$.value; // true
138+
isAdmin$.value; // true
139+
140+
userInfo$.set((value) => {
141+
value.age = 17;
142+
value.role = "user";
143+
});
144+
145+
userInfo$.value; // { name: "fluth", age: 17, role: "user" }
146+
isAdult$.value; // false
147+
isAdmin$.value; // false
148+
```
149+
150+
这样流节点可以成为**替代 ref、reactive 响应式数据的基础单元**
122151

123152
## 在 vue 框架中落地
124153

0 commit comments

Comments
 (0)