vuex的基本使用

安装依赖包

cmd 复制代码
npm install vuex --save

导入依赖包,创建store对象 :store.js中

javascript 复制代码
import Vue from 'vue'
import Vuex from 'vuex'.

Vue.use(vuex)

export default new vuex.store({
state:{
	count:0,//声明全局公用的变量数据
},
mutations:{
	//定义修改全局变量数据的方法
	add(state){
	state.count++
   },
	add2(state){
	state.count++
   }   
},
actions:{},
})

将store对象挂载到vue示例上:main.js中

javascript 复制代码
import vue from 'vue'
import App from './App.vue'
import store from './store'

Vue.config.productionTip = false

new vue({
store,
render: h => h(App)

}).$mount('#app')

基本使用

app.vue

html 复制代码
<template>
<div>
<!--  使用组件-->
  <my-addition><my-addition>
<p>---------------------</p>
<my-subtraction><my-subtraction>
</div>
</template>


<script>
//引入组件
import Addition from "・/components/Addition・vue";
import Subtraction from "・/components/Subtraction.vue";

export default {
  data() {
    return {};
  },
  //注册组件
  components: {
    "my-addition": Addition,
    "my-subtraction": Subtraction
  }
};
</script>

Addition.vue

html 复制代码
<template>
  <div>
<!--  组件中使用store中定义的全局公用的变量-->
   <h3>当前最新的count值为:{{$store.state.count}}</h3>
   <button @click="btnhandler1">+1</button>
   <button @click="btnhandler2">+n</button>
  </div>
</template>

<script>
export default {
  data() {
    return {};
  },
  methods:{
  btnhandler1(){
  //调用mutation里的修改全局变量数据的方法
  this.$store.commit('add')
  },
  btnhandler2(){
  //调用mutation里的修改全局变量数据的方法并传递参数
  this.$store.commit('add2','2')
  }
}
};
</script>

Subtraction.vue

html 复制代码
<template>
  <div>
<!--  组件中使用store中定义的全局公用的变量-->
   <h3>当前最新的count值为:{{$store.state.count}}</h3>
   <button>-1</button>
  </div>
</template>

<script>
export default {
  data() {
    return {};
  }
};
</script>
相关推荐
_lucas5 分钟前
做了一个glsl在线调试工具
前端·javascript·three.js
To_OC8 小时前
LC 51 N 皇后:我以为难的是回溯,结果栽在了对角线下标
javascript·算法·leetcode
腻害兔8 小时前
【若依项目-产品经理视角】深度拆解 RuoYi-Vue-Pro 商城模块:从商品管理到交易引擎,50 张表撑起一整套电商系统
java·大数据·vue.js·产品经理·ai编程
不好听6138 小时前
从一行 JSX 到屏幕像素:前端开发者必须懂的浏览器渲染管线
前端
恒拓高科WorkPlus8 小时前
企业级内网即时通讯建设模型:BeeWorks内网IM四层架构
前端
前端小李子9 小时前
前端环境变量裸奔?我用 EnvShield 给它穿了件防弹衣
前端
youtootech9 小时前
HarmonyOS《柚兔学伴》项目实战25-我的页面、Web 嵌入与项目总结
前端·华为·harmonyos
小林ixn10 小时前
从零到一理解 React 父子组件通信:手写一个 Todo 应用带你彻底搞懂单向数据流
前端·javascript·react.js
醇氧11 小时前
CountDownLatch / CyclicBarrier / Semaphore 面试高频问答清单
前端·面试·职场和发展