软件技术学习笔记

个人博客,记录软件技术与程序员的点点滴滴。

Redux中间件: ChanMiddleware

在开发客户端渲染(CSR)与服务端渲染(SSR)共用的前端代码时,需要使用Redux初始化状态。但是发现Redux-saga的take等函数只能在createStore()之后才能使用,不是很方便。于是,造一个跨组件通信的Redux side-effect中间件: ChanMiddleware 。

ChanMiddleware支持以下3个函数:

interface ChanHandler {
  (state?: any, action?: AnyAction, dispatch?: Dispatch, next?: () => void): void
}

const use = (type: string, handler: ChanHandler) => void;
const useOnce = (type: string, handler: ChanHandler) => void;
const unUse = (type: string, handler: ChanHandler) => void;

type等于'‘时,handler处理所有的Action。

继续阅读→

Redux中间件机制与执行次序

一个框架如果有中间件机制,后续的可扩展性就很强,Redux就是这种一个数据处理框架。Redux中间件机制代码很短,但是理解起来可不是一句话讲得完。要看明白其中间件机制,主要看 createStore()applyMiddleware() 这两个函数。

继续阅读→