vuex直接赋值的三种方法总结


Posted in Javascript onSeptember 16, 2018

我们在编写vuex代码过程中,觉得在a.vue的模板里面写入例如 <p>{{$store.state.num}}</p>很麻烦,我们希望直接就写成{{num}},我们应该怎么写,vue给出三种固定写法,大家理解之后基本照抄,稍做改动即可

第一种方法 通过computed的计算属性直接赋值

1.store.js(vuex的代码如下):

import Vue from 'vue'
import Vuex from 'vuex'
Vue.use(Vuex)
const state={//状态对象
num:1,
}
const mutations={//触发状态
jia(state){
  state.num++;
 },//做加法
jian(state){
  state.num--;
 },//做减法
 
}
export default new Vuex.Store({
state,
mutations,
})

2.你自己组件a.vue代码如下:

<template>
 
 <div>
  <h2>{{msg}}</h2>
  <hr/>
  <h3>{{$store.state.num}}-{{num}}</h3><!--此处要实现{{num}}的写法,需要通过计算属性进行写-->
  
<div>
 <button @click="$store.commit('jia')">+</button>
 <button @click="$store.commit('jian')">-</button>
 
</div>
 </div>
</template>
<script>
 import store from '@/store'
 export default{
  data(){
   return{
    msg:'Hello Vuex',
    
   }
  },
  computed:{
  num(){
  return this.$store.state.num;//这里就是计算属性的写法
  }
  },
  store
  
 }
</script>
<style scoped>
</style>

注意:计算属性写法一定不要忘了给num()与上面的模板要同名

第二种方法 通过mapState的对象来赋值

这种方法更为简单

第一步 a.vue引入mapState

import {mapState} from 'vuex'

第二步将上面的计算属性改成下面这种写法即可

computed:mapState({num:state=>state.num}),即可

第三种方法通过mapState的数组来赋值

代码如下所示:

把上面的计算属性直接改成下面这种形式

computed:mapState(["num"])

注:记得加上import {mapState} from 'vuex'

以上这篇vuex直接赋值的三种方法总结就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Javascript调用C#代码
Jan 17 Javascript
利用JS自动打开页面上链接的实现代码
Sep 25 Javascript
JQuery拖动表头边框线调整表格列宽效果代码
Sep 10 Javascript
c#+jquery实现获取radio和checkbox的值
Sep 12 Javascript
jquery使用正则表达式验证email地址的方法
Jan 22 Javascript
jquery模拟进度条实现方法
Aug 03 Javascript
利用JS轻松实现获取表单数据
Dec 06 Javascript
使用jquery datatable和bootsrap创建表格实例代码
Mar 17 Javascript
AngularJS 教程及实例代码
Oct 23 Javascript
原生JS实现的自动轮播图功能详解
Dec 28 Javascript
基于js判断浏览器是否支持webGL
Apr 18 Javascript
详谈Vue.js框架下main.js,App.vue,page/index.vue之间的区别
Aug 12 Javascript
vue 实现边输入边搜索功能的实例讲解
Sep 16 #Javascript
vue2过滤器模糊查询方法
Sep 16 #Javascript
vue里面使用mui的弹出日期选择插件实例
Sep 16 #Javascript
vue 界面刷新数据被清除 localStorage的使用详解
Sep 16 #Javascript
vuex提交state&amp;&amp;实时监听state数据的改变方法
Sep 16 #Javascript
新手必须知的Node.js 4个JavaScript基本概念
Sep 16 #Javascript
分享5个顶级的JavaScript Ajax组件库
Sep 16 #Javascript
You might like
PHP HTML代码串 截取实现代码
2009/06/29 PHP
PHP程序员常见的40个陋习,你中了几个?
2014/11/20 PHP
yii2中结合gridview如何使用modal弹窗实例代码详解
2016/06/12 PHP
php安装扩展mysqli的实现步骤及报错解决办法
2017/09/23 PHP
Document 对象的常用方法
2009/07/31 Javascript
jquery的Tooltip插件 qtip使用详细说明
2010/09/08 Javascript
JavaScript去掉数组中的重复元素
2011/01/13 Javascript
高效率JavaScript编写技巧整理
2013/08/23 Javascript
JQuery创建DOM节点的方法
2015/06/11 Javascript
js与applet相互调用的方法
2016/06/22 Javascript
常用的js验证和数据处理总结
2016/08/02 Javascript
Bootstrap CSS布局之表单
2016/12/17 Javascript
Vue监听数据对象变化源码
2017/03/09 Javascript
JavaScript实现图片切换效果
2017/08/12 Javascript
Node.js中的child_process模块详解
2018/06/08 Javascript
使用layui实现的左侧菜单栏以及动态操作tab项方法
2019/09/10 Javascript
JavaScript 自定义html元素鼠标右键菜单功能
2019/12/02 Javascript
node.js中npm包管理工具用法分析
2020/02/14 Javascript
JS实现拖动模糊框特效
2020/08/25 Javascript
Python深入学习之装饰器
2014/08/31 Python
一键搞定python连接mysql驱动有关问题(windows版本)
2016/04/23 Python
Python 中 list 的各项操作技巧
2017/04/13 Python
Python实现从log日志中提取ip的方法【正则提取】
2018/03/31 Python
python基于itchat模块实现微信防撤回
2019/04/29 Python
python 读取修改pcap包的例子
2019/07/23 Python
python使用百度文字识别功能方法详解
2019/07/23 Python
利用Python校准本地时间的方法教程
2019/10/31 Python
新西兰最大的在线设计师眼镜店:SmartBuyGlasses新西兰
2017/10/20 全球购物
英国助听器购物网站:Hearing Direct
2018/08/21 全球购物
MONNIER Frères英国官网:源自巴黎女士奢侈品配饰电商平台
2018/12/06 全球购物
上课玩手机检讨书
2014/02/08 职场文书
个人实习生的自我评价
2014/02/16 职场文书
社会调查研究计划书
2014/05/01 职场文书
物业公司管理制度
2015/08/05 职场文书
2016年党校科级干部培训班学习心得体会
2016/01/06 职场文书
CSS3 Tab动画实例之背景切换动态效果
2021/08/23 HTML / CSS