MobX 学习
资源汇集帖:
https://github.com/mobxjs/awesome-mobx/blob/master/README-CN.md
中文文档: http://cn.mobx.js.org/
Store 如何引入?
https://github.com/mobxjs/mobx/issues/300
有3种方法:
- 通过 props 传递
- 直接 import
- 通过 context / Provider 机制传
可根据可测试性、使用方便性自己选择。
如何和 react-router 一起用?
http://frontendinsights.com/connect-mobx-react-router/
表单
mobx-react-form
主要特点:
- 支持3种 validation 模式
- VJF: 传统 js function 校验
- DVR: 声明式校验规则
- SVK: JSON schema 校验关键字
- 可以混合几种模式,还可异步验证。
- form 是个独立的对象,跟组件如何呈现无关。
- 使用时,每个字段通过绑定的语法关联到表单的 field. 按照字段名字匹配。
另一个例子,不用库,直接实现表单双向绑定 https://blog.risingstack.com/handling-react-forms-with-mobx-observables/
其他一些经验文章
- https://github.com/ckinmind/mobx-share
- 使用mobx开发高性能react应用
- https://medium.com/@foxhound87/state-management-hydration-with-mobx-we-must-react-ep-05-1922a72453c6
MobX 学习的更多相关文章
- mobx学习笔记01——什么是mobx?
mobx是什么? js框架 官方定义:Simple,scalable state management(简单.可扩展的状态管理) mobx与redux相比: 语义丰富.响应式编程,开发难度低.学习成本 ...
- mobx 学习笔记
Mobx 笔记 Mobx 三板斧,observable.observer.action. observable: 通过 observable(state) 定义组件的状态,包装后的状态是一个可观察数据 ...
- mobx学习笔记04——mobx常用api
1 可观察的数据(observable) observable是一种让数据的变化可以被观察的方法. 那些数据可被观察? -原始类型 String.Number.Boolean.Symbol -对象 - ...
- mobx学习笔记03——mobx基础语法(decorator修饰器)
在声明阶段实现类与类成员注解的一种语法. function log(target){ const desc = Object.getOwnPropertyDescriotors(target.prot ...
- mobx学习笔记02——mobx基础语法(class)
新的语法可能不被浏览器支持,可以使用babel转换为浏览器支持的代码格式: 为什么要定义class? js是一门面向对象的编程语言.需要利用类来复用代码,提高编程效率. 需要什么样的class能力? ...
- React Native使用Mobx总结
参考博客: http://www.jianshu.com/p/505d9d9fe36a 这是我看的学习Mobx目前为止觉得最详细学习的博客了. 下面只是记录下我的学习和一些简单的使用: 需要引入 ...
- 学习一些和redux一样作用的mobx知识
两个组件:mobx和mobx-react 英文文档:https://mobx.js.org/refguide/object.html 中文文档:https://cn.mobx.js.org/ 样例:h ...
- AntDesign(React)学习-11 使用mobx
mobx 是由 Mendix.Coinbase.Facebook 开源和众多个人赞助商所赞助的. mobx和redux类似,也可以用来进行状态管理,并且更简单,更灵活.初次研究,先实现一个最简单的功能 ...
- mobx 的学习
1.初始化项目 第一步用create-react-app初始化一个项目,并打开webpack配置项 npx create-react-app react-mobx-demo cd react-mobx ...
随机推荐
- JZ2440学习笔记之第一个裸机程序(Keil-MDK)
CPU:S3C2440, ARM920T, Internal 4KB RAM, Support boot from NAND flash, 128MB for each bank. JZ2440:Me ...
- 外星人入侵游戏(python代码)
https://github.com/ehmatthes/pcc/tree/master/chapter_12/images
- showDialog 必须Stateful
showDialog 必须Stateful 因为需要context
- 微服务化的大坑之一:当dubbo神器碰上共用注册中心和错误的暴露接口
dubbo是国内用比较多的微服务化系统,非侵入(意思就是说不用自己写代码,把xml配置好就可以用了,这个xml的引用注解就注在springboot的开启main类里面就可以了),提供好用的均衡和容错机 ...
- range 小数据池介绍
1.range 2.小数据池 1. range 范围 [起始位置:终止位置:步长]range(起始位置,终止位置,步长) #顾头不顾尾 3.小数据池 小数据池,也称为小整数缓存机制,或者称为驻留机制等 ...
- python 环境安装和卸载1
同事换了新机器,系统从win7变为了win10,因此需要重新安装python环境啦!不废话,直奔主题. A 安装 一.进入python官网 www.python.org 进入downloads-&g ...
- java @Service 引入什么包
maven中加入 <dependency> <groupId>org.springframework</groupId> <artifactId>spr ...
- elasticsearch_.net_client_nest2.x_到_5.x常用方法属性差异
目录: Elasticsearch .net client NEST 5.x 使用总结 elasticsearch_.net_client_nest2.x_到_5.x常用方法属性差异 Elastics ...
- C# DataGridView 动态添加列和调整列顺序
https://yq.aliyun.com/articles/421700 // DataGridView1的ColumnDisplayIndexChanged事件处理方法private void D ...
- mac 使用iTerm2快捷登录远程服务器
mac 使用iTerm2快捷登录远程服务器 正常使用ssh登录服务器: ssh -p port user@host user@host's password: 输入端口,用户名,服务器ip地址后,还需 ...