vstore 是用于 vecty 框架的类似 redux 的状态管理库。 安装 go get marwan.io/vstore 代码仓库: https://github.com/marwan-at-work/vstore 定义 action 一般使用结构定义,比如 type Increment struct{} 和 type AddTodo struct { Id int Text string } 定义 state 和 reducer 比如 todo app 的 state 定义 type State struct { Todos []*Todo Filter Filter } 要实现 vstore.Reducer 接口,比如 func (s *State) Reduce(action interface{}) { switch a := action.(type) { case *AddTodo: s.Todos = append(s.Todos, &Todo{ Id: a.Id, Completed: false, Text: a.Text, }) case *SetVisibilityFilter: s.Filter = a.Filter case *ToggleTodo: println("reduce toggle todo:", a.Id) for _, todo :