import Vuex from 'vuex'; import { Module, VuexModule, Mutation, Action } from 'vuex-module-decorators'; @Module class foo extends VuexModule { text = 'hello world' @Mutation setText(text) { this.text = text; } @Action({ commit: 'setText' }) setTextAction(text) { return text; } } const store = new Vuex.Store({ modules: { foo: foo }) export default store;
这样,我们的项目准备基本上完毕了,把Vue组件和Vuex状态管理以class的形式来编写。大概是我觉得es5的写法显得不太优雅吧,没有es6的写法那么高端。
结束
class语法和装饰器decorators语法都是ES6的提案,都带给了前端不一样的编程体验,大概也是前端的一个比较大的革命吧,我们应该拥抱这样的革命变化。