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 相关文章推荐
JS获取鼠标坐标的实例方法
Jul 18 Javascript
jQuery动画效果-fadeIn fadeOut淡入浅出示例代码
Aug 28 Javascript
淘宝网提供的国内NPM镜像简介和使用方法
Apr 17 Javascript
浅谈javascript中return语句
Jul 15 Javascript
JavaScript实现定时隐藏与显示图片的方法
Aug 06 Javascript
纯js代码实现简单计算器
Dec 02 Javascript
浅谈JavaScript 执行环境、作用域及垃圾回收
May 31 Javascript
浅谈JavaScript中的this指针和引用知识
Aug 05 Javascript
微信小程序如何像vue一样在动态绑定类名
Apr 17 Javascript
vue 中的keep-alive实例代码
Jul 20 Javascript
JS实现贪吃蛇游戏
Nov 15 Javascript
jquery实现图片无缝滚动 蒙版遮蔽效果
Jan 11 jQuery
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程序中防止盗链
2008/04/09 PHP
PHP 数组遍历方法大全(foreach,list,each)
2010/06/30 PHP
php设计模式之单例、多例设计模式的应用分析
2013/06/30 PHP
php过滤html中的其他网站链接的方法(域名白名单功能)
2014/04/24 PHP
PHP中echo,print_r与var_dump区别分析
2014/09/29 PHP
深入分析PHP优化及注意事项
2016/07/04 PHP
IE JS无提示关闭窗口不提示的方法
2010/04/29 Javascript
基于JQuery的asp.net树实现代码
2010/11/30 Javascript
JavaScript实现页面滚动图片加载(仿lazyload效果)
2011/07/22 Javascript
JavaScript中的关键字&quot;VAR&quot;使用详解 分享
2013/07/31 Javascript
js获取时间(本周、本季度、本月..)
2013/11/22 Javascript
JavaScript中的迭代器和生成器详解
2014/10/29 Javascript
jquery实现顶部向右伸缩的导航区域代码
2015/09/02 Javascript
基于js实现微信发送好友如何分享到朋友圈、微博
2015/11/30 Javascript
jquery ezUI 双击行记录弹窗查看明细的实现方法
2016/06/01 Javascript
Js获取当前日期时间及格式化代码
2016/09/17 Javascript
ajax的分页查询示例(不刷新页面)
2017/01/11 Javascript
浅谈vue.js导入css库(elementUi)的方法
2018/03/09 Javascript
如何手动实现一个 JavaScript 模块执行器
2020/10/16 Javascript
[01:17]辉夜杯战队访谈宣传片—EHOME
2015/12/25 DOTA
python3制作捧腹网段子页爬虫
2017/02/12 Python
python中类变量与成员变量的使用注意点总结
2017/04/29 Python
利用numpy实现一、二维数组的拼接简单代码示例
2017/12/15 Python
python实现学生信息管理系统
2020/04/05 Python
对python xlrd读取datetime类型数据的方法详解
2018/12/26 Python
实例讲解Python中浮点型的基本内容
2019/02/11 Python
使用Python构造hive insert语句说明
2020/06/06 Python
详解Python中import机制
2020/09/11 Python
AE美国鹰美国官方网站:American Eagle Outfitters
2016/08/22 全球购物
中软国际Java程序员笔试题
2014/07/19 面试题
应届大专生自荐书
2014/06/16 职场文书
小区门卫的岗位职责
2014/09/26 职场文书
2015年度保密工作总结
2015/04/24 职场文书
超搞笑婚前保证书
2015/05/08 职场文书
2016廉洁教育心得体会
2016/01/20 职场文书
2016年社区综治宣传月活动总结
2016/03/16 职场文书