zoukankan      html  css  js  c++  java
  • 始于Flux的单项数据流发展简单介绍

    差劲的程序员操心代码,优秀的程序员操心数据结构和它们之间的关系
                                                                              ————Linus Torvalds,Linux创始人
     
    Flux是由facebook推出的,用来解决MVC架构带来的数据管理问题。
    Flux是一种“单项数据流”的管理方式。
    在以前,采用MVC架构,MVC无法禁绝View和Model之间的直接对话,因此产生了View直接Model,Model直接修改View的情况。当项目复杂度度越来越高时候时,这种方式很容易造成数据管理混乱。
     
    而Flux的单项数据流,如果要改变界面,需要改变Store中的状态,如果要改变Store中的状态,必须派发一个action对象。Store对应于MVC中的Model,View对应于MVC中的View。单项数据流结果View只能获取Store中数据,但是不能直接修改,想要修改需要派发一个action给Dispatcher。Store本身并不具备直接改变View的功能。
     
    这样限制禁绝了数据流混乱的可能。
     
    后来基于flux的不足,诞生了reflux、fluxible、redux等,其中又以redux最受欢迎。
     
    redux在单项数据流的基础上,还强调三个基本原则:
    1,唯一数据源:也就是只有一个store
    2,保持状态只读:只能通过派发action改变
    3,数据改变只能通过纯函数完成
     
    对比Vue和React
    两者都采用了单项数据流的管理方式,相同的是都只有一个store,都只能通过派发事件修改store,不同的是Vue是直接修改Store中的数据,而react是返回一个新的state数据

    我站在山顶看风景!下面是我的家乡!
  • 相关阅读:
    生成TXT下载并以逗号分隔
    使用javascript绑定键盘enter事件到asp.net的button控件 .
    学习wpf播放视频音频的两种不同方法
    批量修改数据库表的架构sql
    如何修改Sql2005注册服务器名称
    虚拟化之Hypervisor
    JAVA环境配置
    centos系统网卡配置详解
    Kali Linux安装
    Linux扩容新增磁盘分区挂载fdisk
  • 原文地址:https://www.cnblogs.com/zhensg123/p/14741551.html
Copyright © 2011-2022 走看看