是的,这个阶段我们做出了可配置的成品
上个阶段遇到了情况,做出了说明
其中提到了所谓的响应式保持问题
这个问题是绕不开的,我们是怎么结局的呢?
首先要明白什么是响应式?
响应式就是赋予数据逻辑,数据的变化会自发地进行相应操作
同理可知,React 的 useState,Angular 的 BehaviorSubject,Vue 的 Proxy,都能自发地进行数据响应式,将一个数据的变化转化为另一个数据的变化或触发一定的事件
但是和 Angular BehaviorSubject 不同,useState/useReducer/ref/reactive ——
只有视图相关逻辑
ng 用的是响应式数据流的概念,这个以后会有文章单独说明几者差异
但是 Vue 有个很不一样的地方,那就是深层可变数据,而且props 是值绑定,不是引用绑定!
如果是 React 或者 Angular,将 setState 函数传入 props ,或者将 响应式数据流传入 props 都不会成为问题:
// react 最为自然const [state,setState] = useState('')
// ng 稍微复杂const stream$ = new BehaviorSubject('')
因为传递的是引用,被引用对象的变化不会触发响应逻辑
但是
Vue 的 props 是值复制,与当前组件的 data/state