Nautil中使用双向数据绑定的实现-创新互联

虽然是基于 react 的框架,但是在 nautil 中可以使用双向数据绑定,这得益于基于观察者模式的开发思路。在 react 中使用双向绑定并非没有需求,react 严格的单向数据流,严重影响了开发者的发挥空间,特别是在表单组件的使用中,很容易陷入回调地狱,即使 redux 也无法避免。

成都创新互联专注为客户提供全方位的互联网综合服务,包含不限于网站设计、成都网站建设、浑源网络推广、微信小程序开发、浑源网络营销、浑源企业策划、浑源品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们大的嘉奖;成都创新互联为所有大学生创业者提供浑源建站搭建服务,24小时服务热线:18980820575,官方网址:www.cdcxhl.com

现有状态管理的问题

我们都知道,react 是单向数据流的,数据只能从外部通过 props 传入,再通过 props 上面传入的回调函数再传出去,直接修改 props 或者上面的对象,不会带来界面的更新,而且会导致数据不可预期。

基于这种单向数据流的 flux 思想,redux 还遵循了函数式编程的规范,保证了数据的干净。同时,它提供了自顶向下的分发机制,修改 redux store 中的数据,会触发所有connected 的组件。而触发过程是,调用 connected 组件 props.dispatch 方法。

虽然单向数据流的方式保证了数据流干净,但 redux 的编程方式太复杂了。它不仅增加了数据构造本身的逻辑代码,而且 action 代码也是分散的,当你需要进行修改时,有的时候会在好几个文件之间转晕。虽然有很多优化 redux 样板代码的库,但受限于它的编程思想,仍然不好在项目中节省更多时间。

新的思维方式

出于节省更多时间成本的目的,我在开发 nautil 中没有使用 flux 那一套,而是另辟蹊径,做了很像 mobx 但又更简单的事。

我们来看一下如何在 nautil 中创建一个 store:

import { Store } from 'nautil'
const store = new Store({
 some: 123,
})

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


分享名称:Nautil中使用双向数据绑定的实现-创新互联
网站路径:http://azwzsj.com/article/dejegc.html