美文网首页
vue+vuex实现flux架构 vue+vuex+servic

vue+vuex实现flux架构 vue+vuex+servic

作者: 多喝凉开水 | 来源:发表于2017-11-20 18:39 被阅读255次
传统flux架构

概述:

    1、vue文件中的数据交互操作抽离,只包含ui操作及不需要进行数据操作的state(View);

    2、vuex中保存有所有的交互数据以及操作动作(Store与Action);

    3、vue文件与vuex之间通过computed进行连接(bind);

    4、vue文件通过$store.commit与$store.dispatch调用vuex方法(Dispatcher)。

需要注意的:

    1、vue采用双向数据流,比react的单向数据流写法简单,但可能会造成状态的难以管理追踪,在使用时需要注意。在框架中,可以在computer中通过深拷贝实现store数据与view数据的双向绑定解除,实现单项数据流;

    2、一个操作行为应有一个针对的action,而不应该因为接口是同一个就合并。例如,新增操作与编辑操作常使用同一个接口,但在定义时应定义add与edit两个action,表达更为明确,并能应对后续的扩展(例如可能发生的接口改变);

隶属于不同action,使用了同一个接口

    3、一个操作行为针对一个action,action指代的是一个行为,内部可分为有多个动作。例如,一个edit操作是一个action,内部常分为两个动作:提交编辑数据,获取数据。

action内包含两个动作,其中一个动作也是另一个action

可对action中的行为进一步抽分为Service层


完整架构

概述:

    1、vuex层中不在包含直接的后端交互逻辑,采用service调用的方式调用底层方法;

    2、service作为数据逻辑组装层,基本所有的数据组装逻辑都在该层处理;

    3、proxy是对底层请求的封装。

需要注意的:

    1、service层不像vuex中一样是根据操作行为划分,而应该根据业务类型划分。例如,很多页面可能都有请求用户权限的动作,在service中应当有一个userService类的实例(或对象),对外提供所有的用户操作,而不是针对每个业务实现一个操作;

service层作为数据逻辑层,负责前后端数据的统一及数据整理

    2、proxy层是对底层请求的封装,主要就是发送请求;

requestonce方法为封装的一层,proxy层只负责发送数据

    3、分层是为了分开各类操作,也是为了应对后续可能发生的变化:接口变化时,只需要改动proxy层;接口数据变化时,只需要改动service层;ui变化时,只需要改变vue和vuex层;

    4、不建议使用Promise等方式进行回掉,每层都要写一个promise方法和then,catch方法太烦了;在action层中,一个action很可能会调用其他action,但是层级一般不会太深,一般最多两层,使用promise的方式得不偿失。

相关文章

  • vue+vuex实现flux架构 vue+vuex+servic

    概述: 1、vue文件中的数据交互操作抽离,只包含ui操作及不需要进行数据操作的state(View); 2、vu...

  • Flux与Redux

    一. Flux 1. 概念 flux是一套前端应用架构模式,核心是单向数据流 注:flux不是具体的代码实现 2....

  • Android开发之Flux架构

    Android开发之Flux架构 什么是Flux? Flux是一种软件开发架构,开发流程遵循Restful的点对点...

  • 学习笔记《Vuex 的响应式编程》

    项目使用 Flux 模式来实现的 SPA,Vuex 是不可绕过的 Flux 是一种架构思想,专门解决软件的结构问题...

  • 2021-04-14 redux

    Redux 将flux与函数式编程结合在一起, 对于flux的系统架构的实现 Redux使用场景- 简单来说, 如...

  • 第46期 带你走进医疗行业的体验设计 & 前端开发与架构师 &

    前端架构101:从 Flux 进化到 Model-View-Presenter 在 Flux 架构中,有两个问题依...

  • Flux框架

    Flux用来解决React在结构上的问题,从Flux也衍生了Redux,Flux也类似MVC这一类的架构,Flux...

  • android Flux架构初探

    Flux架构初探 引用facebook官网的一段介绍: Flux is the application archi...

  • Flux架构

    Flux基本概念 四个部分 View: 视图层 Action: 视图层发出的动作(比如mouseClick等) D...

  • Flux架构

    当应用复杂程度增加时,state会变得越来越复杂,只用React开发将会变得力不从心。不仅仅是view层的内容,还...

网友评论

      本文标题:vue+vuex实现flux架构 vue+vuex+servic

      本文链接:https://www.haomeiwen.com/subject/aptbvxtx.html