转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/7372119.html

一:Mobx工作流程图

二:MobX涉及到的概念

1:状态state

组件中的数据。

2:被观察observable

被observable修饰的state数据将会暴露给整个app,各观察者组件都可以根据state值的变化作出响应。

3:观察者observer

被observer修饰的组件,将会根据组件内使用到的被observable修饰的state的变化而自动重新渲染(原理:用autorun包裹了render函数,state变化触发autorun从而自动渲染)

4:action

state值的修改需要在action函数中进行。

5:衍生值computed

get:基于state值,通过一些计算得到的新值并返回给调用者。

set:get的相反运算,参数为一个值,由该值进行get函数中的反运算,得到对应的state值并赋予state。

6:衍生行为autorun

基于state的变化而触发的一系列行为(注意:这些行为不改变state值、不产生新的数据),通常为日志记录、请求发送、UI渲染等。

三:Mobx的使用

掌握了上面的基本概念,Mobx的使用流程就清晰了:

新建一个mobx目录,在其中新建一个appStore.js文件,专门用于管理整个app的state。appStore中定义一个Component,在组件中:

1:定义需要被全局观察的state,用@observable修饰

2:定义改变state的行为函数,用@action修饰

3:定义基于某state,通过计算产生新值的get函数,用@computed修饰

4:定义基于所传参数,通过计算得到state值的set函数,用@computed修饰

5:定义基于state变化,自动触发的行为函数,用@autorun修饰

6:在文件末尾,新建一个该组件的实例,并export

然后,在其他组件文件中,就可以import 这个组件实例,直接使用  组件实例.XXX  访问数据、方法了。

注意:其他组件是观察者组件,用@observer修饰。

MobX快速入门教程(重要概念讲解)相关推荐

  1. Flowable 快速入门教程:Flowable 入门开发案例,结合流程设计器详细讲解

    Flowable 快速入门教程:Flowable 入门开发案例,结合流程设计器详细讲解 前言 流程设计器集成 整体流程图 流程节点说明 第一审核人节点:实际设置审核人 配置信息 说明 第二审核人:参数 ...

  2. python3入门-终于懂得python3快速入门教程

    跟Java语言一样,python语言也有类的概念,直接使用class关键字定义python类.在python类,定义类的方法.然后直接使用类的初始化调用自身,获取相应的属性.以下是小编为你整理的pyt ...

  3. sklearn快速入门教程:(四)模型自动调参

    上个教程中我们已经看到在sklearn中调用机器学习模型其实非常简单.但要获得较好的预测效果则需要选取合适的超参数.在实际的项目中其实也有不少参数是由工程师借助其经验手动调整的,但在许多场景下这种方式 ...

  4. sklearn快速入门教程:(一)准备工作

    sklearn快速入门教程 – 准备工作 1. 前言 sklearn全称 scikit-learn,它是一个集成了目前市面上最常用的机器学习模型的库,使用起来非常轻松简单,因此获得了广泛的应用. 从官 ...

  5. 3-OpenCL快速入门教程

    原文地址:https://blog.csdn.net/augusdi/article/details/12750683 OpenCL快速入门教程 原文地址:http://opencl.codeplex ...

  6. 新手必备pr 2021快速入门教程「七」效果控件面板详解

    PR2021快速入门教程,学完之后,制作抖音视频,vlog,电影混剪,日常记录等不在话下!零基础,欢迎入坑! 本节内容 在使用pr软件的过程中,效果控件功能可以说是比较常用的功能,但是,具体它有哪些效 ...

  7. BIML 101 - ETL数据清洗 系列 - BIML 快速入门教程 - 序

    BIML 101 - BIML 快速入门教程 做大数据的项目,最花时间的就是数据清洗. 没有一个相对可靠的数据,数据分析就是无木之舟,无水之源. 如果你已经进了ETL这个坑,而且预算有限,并且有大量的 ...

  8. ​HealthKit开发快速入门教程大学霸内部教程

    ​HealthKit开发快速入门教程大学霸内部教程 ​ ​ 国内第一本HealthKit专向教程.本教程详细讲解iOS中,如何使用HealthKit框架开发健康应用.最后,本教程结合HealthKit ...

  9. Apple Watch开发快速入门教程

     Apple Watch开发快速入门教程  试读下载地址:http://pan.baidu.com/s/1eQ8JdR0 介绍:苹果为Watch提供全新的开发框架WatchKit.本教程是国内第一本A ...

最新文章

  1. EM算法(Expectation Maximization)期望最大化算法
  2. 阅读一款3D引擎的方法备忘
  3. 容器删除元素后迭代器失效_STL 4: STL之容器:选择时机,删除元素,迭代器失效...
  4. 遇到网络问题你是怎么解决的?
  5. 浅析Python3中的bytes和str类型(转载)
  6. Android getResources的作用和需要注意点
  7. 中秋佳节共团圆,送3本Python书
  8. qq邮箱如何在win10邮箱连接到服务器,win10系统下邮箱怎么添加qq邮箱
  9. python必背代码-Python小白必备的8个最常用的内置函数(推荐)
  10. 解决position:fixed抖动的问题
  11. [BZOJ4872][六省联考2017]分手是祝愿(期望DP)
  12. 上海富勒wms_冷库推荐|上海1800托低温库出租
  13. 共同富裕指数集:31省份共同富裕-富裕度、共同度两大维度数据(2000-2021年)
  14. 颜色代码大全 - RGB颜色查询对照表
  15. 银行合规程序KYC、CDD、AML和TM
  16. 用计算机如何扫描仪,扫描仪的使用方法 扫描仪怎么用
  17. dex文件格式------header_item解析
  18. 枚举所有IE窗口,实现自动登录
  19. 高中的班花貌美如花,我与一众兄弟将其“共享”了!
  20. 漫谈微信开放平台一(小程序服务器url设置)

热门文章

  1. 走进LWRP(Universal RP)的世界
  2. maven 关联源码插件_繁琐的任务简单化,Maven的插件机制
  3. Unity中BVH骨骼动画驱动的可视化理论与实现
  4. 工作中的javascript代码收集及整理
  5. 【王俊杰de人工智能实战课】第7次作业2
  6. hdu 5813 Elegant Construction
  7. 2. Mysql数据库的入门知识
  8. 魔兽争霸Ⅲ运行时不能初始化directX的错误解决
  9. 添加右键用Sublime Text3 打开文件和文件夹
  10. 第六节:深究事务的相关性质、隔离级别及对应的问题、死锁相关