原文地址:
示例
先展示成果
Redux是什么
Redux 是 JavaScript 状态容器,提供可预测化的状态管理。
为什么要使用Redux
小程序俨然是一个类似Hybrid App的东西,前面是SPA,小程序提供一些原生功能的接口。
现在前端程序规模都比较大,页面状态,数据缓存,需要管理的东西太多。引入Redux可以方便的管理这些状态。并且Redux丰富的周边工具也是很有吸引力的。
集成Redux
小程序的模块化
微信的文档并没有指出如何使用第三方库,所以只能从微信小程序的模块化入手。
文档中提到,模块化的关键是:
module.exports = function(){
}
同时,如果我们去观察小程序开发环境的network
面板,点击任何一个js,我们可以发现:
- 项目目录中的所有js文件都会自动被加载,无论我们是否在代码中
require
- 所以的模块都会被套上下面的代码:
define("reducers/visibilityFilter.js", function(require, module){
var window={
Math:Math}/*兼容babel*/,location,document,navigator,self,localStorage,history,Caches;
/********************/
/******你写的代码******/
/********************/
})
这实际上是类似AMD的加载方式