当前位置: 首页 > news >正文

vuex 学习笔记 01

以下针对 vuex 1.x 及 某些0.x 版本

官方文档有个非常简单的 tutorial, 我这里在精简一下,代码大概如下:

html

<h3>Count is {{ counterValue }}</h3>
<div>
  <button @click="increment">Increment +1</button>
  <button @click="decrement">Decrement -1</button>
</div>

js

new Vue({
  el: 'body',
  store: new Vuex.Store({
    state: {
      count: 0
    },
    mutations: {
      INCREMENT: function(state, amount) {
        state.count = state.count + amount
      },
      DECREMENT: function(state, amount) {
        state.count = state.count - amount
      }
    }
  }),
  vuex: {
    getters: {
      counterValue: function(state) {
        return state.count
      }
    },
    actions: {
      increment: function({ dispatch, state }){
        dispatch('INCREMENT', 1)
      },
      decrement: function({ dispatch, state }){
        dispatch('DECREMENT', 1)
      }
    }    
  }
})

预览
http://jsbin.com/cofupo/edit?...

如果上面代码不用 vuex 实现的话会非常简单,html 代码不变,js 更新如下:

new Vue({
  el: 'body',
  data: {
    counterValue: 0
  },
  methods: {
    increment: function(){
      this.counterValue = this.counterValue + 1;
    },
    decrement: function(){
      this.counterValue = this.counterValue - 1;
    },    
  }
})

通过上面的代码对比, vuex 把应用的数据和修改数据的方法放在了一个 store 对象里面统一管理, 对数据的获取和操作则分别通过 vm 新增建的配置属性 vuex 的 getters 和 actions 来进行。

相关文章:

  • Eclipse中web项目的默认发布路径改为外部Tomcat中webapp路径
  • 【NOIP】提高组2013 货车运输
  • AngularJS 用 Interceptors 来统一处理 HTTP 请求和响应
  • Ubuntu16.04 安装wine下的QQ
  • 1-2 ARM概况
  • 大数据美食——寻找地图上的美味
  • 使用python+hadoop-streaming编写hadoop处理程序
  • php ci框架整合银盛支付
  • SQL Server编程(06)触发器
  • 关于写东西
  • 1164 统计数字
  • 大神的Blog挂了,从Bing快照里复制过来的备份
  • linux内核值shmmax问题
  • 一行神奇的javascript代码
  • Mybatis初体验
  • ----------
  • If…else
  • in typeof instanceof ===这些运算符有什么作用
  • Java-详解HashMap
  • PAT A1017 优先队列
  • Python学习笔记 字符串拼接
  • Spring Cloud中负载均衡器概览
  • SwizzleMethod 黑魔法
  • 阿里云ubuntu14.04 Nginx反向代理Nodejs
  • 彻底搞懂浏览器Event-loop
  • 缓存与缓冲
  • 解析带emoji和链接的聊天系统消息
  • 前嗅ForeSpider中数据浏览界面介绍
  • 深度学习在携程攻略社区的应用
  • 使用Swoole加速Laravel(正式环境中)
  • 数据科学 第 3 章 11 字符串处理
  • 小李飞刀:SQL题目刷起来!
  • 深度学习之轻量级神经网络在TWS蓝牙音频处理器上的部署
  • ​卜东波研究员:高观点下的少儿计算思维
  • ​油烟净化器电源安全,保障健康餐饮生活
  • #我与Java虚拟机的故事#连载06:收获颇多的经典之作
  • %3cli%3e连接html页面,html+canvas实现屏幕截取
  • (2)(2.10) LTM telemetry
  • (4)通过调用hadoop的java api实现本地文件上传到hadoop文件系统上
  • (function(){})()的分步解析
  • (附源码)spring boot公选课在线选课系统 毕业设计 142011
  • (一)C语言之入门:使用Visual Studio Community 2022运行hello world
  • (一)基于IDEA的JAVA基础1
  • (一)硬件制作--从零开始自制linux掌上电脑(F1C200S) <嵌入式项目>
  • (一一四)第九章编程练习
  • (转)mysql使用Navicat 导出和导入数据库
  • (转)visual stdio 书签功能介绍
  • *上位机的定义
  • .NET : 在VS2008中计算代码度量值
  • .NET 3.0 Framework已经被添加到WindowUpdate
  • .Net IOC框架入门之一 Unity
  • .Net mvc总结
  • .NET Remoting学习笔记(三)信道
  • .NET 编写一个可以异步等待循环中任何一个部分的 Awaiter
  • .net 生成二级域名