下一代vue狀態管理:Vanx

這是一個新的狀態管理庫,來自一點新的思想。源碼地址

前端屆特別喜歡把簡單的事情搞複雜。
原本原生代碼就已經能夠實現的事情。非要爲了當前端網紅,造一些複雜的,大而無當的東西。前端

如今讓咱們拋棄複雜,心智負擔極重的Vuex, Flux, Redux等等等等之類的東西吧。
單純的面向對象,已經足以管理狀態了,並且更好。
更少的心智負擔,更簡單的公共接口。一眼就能看明白。vue

用法

下面是一個小Demo
建立一個Class,這個Class須要繼承Vanx類
擁有兩個方法plus和minus,和一個狀態:result
調用plus或者minus就會對result加1或者減1git

import Vanx from 'vanx';

class Calcutor extends Vanx {
  protected result = 0;
  public plus() {
    this.result++;
  }
  public minus() {
    this.result--;
  }
}
// 實例化並導出狀態管理類
export const calcutor = new Calcutor();

而後在Vue文件裏github

import { Component, Prop, Vue } from 'vue-property-decorator';
import { calcutor } from './store'; 

@Component
export default class HelloWorld extends Vue {
  // 使用剛剛處處的累的一個方法叫decorator,參數是你想注入到Vue裏的狀態的變量名
  @calcutor.decorator('result')
  private calcutorResule!: number;
  private plus() {
   // 而後調用狀態管理類的方法,
   // vanx會通知vue去更新Dom
    calcutor.plus();
  }
  private minus() {
    calcutor.minus();
  }
}

想用着試試看的能夠直接typescript

npm install vanx
相關文章
相關標籤/搜索