标签:也有 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