mobx 初体验
最近刚刚从vue技术栈转到react阵营,公司的技术选型是honeycomb,一个基于react和mobx的前端框架,所以我不得不花一天时间去看mobx的官方文档,记录下自己的学习。
mobx 5
创建一个仓库:
import {
observable, computed, action, runInAction } from 'mobx';
class Store {
@observable todo = [
{
id: 0, name: 'x' },
{
id: 1, name: 'y' },
{
id: 2, name: 'z' }
];
// 类似于vue的计算属性
@computed get todo2() {
return todo.map(item => item.id * 2);
}
// 和类似于其他状态管理,被观察的数据只能通过action来修改
@action addTodo(item) {
let cpTodo = [...this.todo];
cpTodo.push(item);
this.todo = cpTodo;
}
// 处理异步
@action initTodo = async function () {
const res =