标签:也有 color ted div port 框架 基于 lstat logs
前几天看到寸志的知乎文章,关于阿里前端推出的Mirror框架,在这里记录一下。
Mirror是基于React,React-router,Redux的一套前端框架,总的来说是对它们的封装和强化。
其中,Redux对状态管理的流程很清晰,但是就代码来说,存在不少重复劳动,而Mirror对其进行了简化。
以下是一个Todo的例子
import mirror, { actions } from ‘mirrorx‘ let nextId = 0 mirror.model({ name: ‘todos‘, initialState: [], reducers: { add(state, text) { return [...state, {text, id: nextId++}] }, complete(state, id) { return state.map(todo => { if (todo.id === id) todo.completed = true return todo }) } } }) // 在某个事件处理函数中 actions.todos.add(‘a new todo‘) // 在另一个事件处理函数中 actions.todos.complete(42)
actions.model()方法将Redux中的action和reducers合二为一了。
使用actions.todos.add(‘...‘)来发起reducers中的add方法。(很像dva有木有- -)
以上是同步action,Mirror对异步action也有相应的处理,以及基于React-router 4.x对路由进行了重新的定义。
欢迎补充和指正
标签:也有 color ted div port 框架 基于 lstat logs
原文地址:http://www.cnblogs.com/quanye/p/7460866.html