Vuex定义及如何使用

简介: 《Vue实战》系列

Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式

Vuex使用过程演示

vue-cli3新创建出来的项目为例,演示Vuex的使用过程。

创建项目:

vue create vuex-test
cd vuex-test
npm run serve

安装vuex:

npm i vuex -S

进入项目的src/下新建一个文件store/index.js,并写入:

// store/index.js
import Vue from 'vue'
import Vuex from 'vuex'
Vue.use(Vuex)
const store = new Vuex.Store({ // 容器 (构造函数Store开头大写)
    state: { // 状态
        count: 0
    },
    mutations: { // 变化(使用mutations提交改变是为了方便追踪变化记录)
        increment (state){
            state.count++
        }
    }
})
export default store // 导出

进入main.js 注入store使所有vue组件能够使用vuex :

// main.js
import Vue from 'vue'
import App from './App.vue'
import router from './router'
import store from './store'
Vue.config.productionTip = false
new Vue({
  router,
  store,
  render: h => h(App)
}).$mount('#app')

现在我们可以从组件的方法提交一个变更:

methods: {
  increment() {
    this.$store.commit('increment') // .commit('<mutations里的事件名>')
    console.log(this.$store.state.count)
  }
}

在组件模板中使用状态:

{{ count }}
computed: {
    count() {
        return this.$store.state.count
    }
}

state状态的改变会触发computed的重新计算

相关文章
|
4月前
|
存储 JavaScript 容器
vuex的五个属性及使用方法示例
vuex的五个属性及使用方法示例
99 0
|
1月前
|
JavaScript API 开发者
vue自定义Hooks函数使用和封装思想
【8月更文挑战第8天】vue自定义Hooks函数使用和封装思想
101 1
|
23天前
|
JavaScript API
如何使用Vue3的可计算属性
【9月更文挑战第5天】如何使用Vue3的可计算属性
48 13
|
4月前
|
JavaScript 前端开发
详解Vue——定义组件的方式
详解Vue——定义组件的方式
35 0
|
JavaScript 前端开发
vue 创建自己内部vuex方法
vue 创建自己内部vuex方法
|
4月前
|
JavaScript
Vue定义全局组件的三种方式
Vue定义全局组件的三种方式
35 0
|
4月前
|
JavaScript 前端开发
Vue状态管理:请解释Vuex中的action是什么?它们有什么用途?
Vue状态管理:请解释Vuex中的action是什么?它们有什么用途?
287 2
|
4月前
|
Web App开发 存储 前端开发
第五章 在React中如何定义组件
第五章 在React中如何定义组件
|
10月前
|
存储 资源调度 JavaScript
vuex是什么?如何使用?使用他的功能场景?
vuex是什么?如何使用?使用他的功能场景?
47 0
|
资源调度 JavaScript
vuex如何使用
Vuex是一个专为Vue.js设计的状态管理模式。它集中式管理了应用中所有组件的状态,使得状态管理更加简单和高效。下面是使用Vuex的基本步骤:
57 0