首页 > 其他 > 详细

Vuex-全局状态管理【简单小案例】

时间:2019-12-11 16:25:44      阅读:132      评论:0      收藏:0      [点我收藏+]

src根目录

新建store.js

import Vue from ‘vue‘
import Vuex from ‘vuex‘
Vue.use(Vuex)

const state = {
  count: 1
}

const mutations = {
  increment(state) {
    state.count++
  },
  decrement(state) {
    state.count--
  }
}

const actions = {
  Actions_increment: ({ commit }) => {
    commit(‘increment‘)
  },
  Actions_decrement: ({ commit }) => {
    commit(‘decrement‘)
  }
}

//模块到处,才能被引入使用

export default new Vuex.Store({ state, mutations, actions })

main.js引入

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‘)

新建一个 vue组件 

<template>
  <div id="vuex">
    <div class="container">
      <h1>Vuex实例</h1>
      <hr />
      <div class="input-group">
        <span class="input-group-btn">
          <button type="button" class="btn btn-success" @click="Actions_increment">增加</button>
        </span>
        <input type="text" class="form-control"  v-model="count" />
        <span class="input-group-btn">
          <button type="button" class="btn btn-danger" @click="Actions_decrement">减少</button>
        </span>
      </div>
    </div>
  </div>
</template>
<script>
import { mapActions, mapState } from "vuex"
export default {
  methods: {
   ...mapActions(["Actions_increment", "Actions_decrement"])
  },
  computed: {
    ...mapState([
      count
    ])
  }
  
}
</script>

<style>

</style>

效果图:

技术分享图片

Vuex-全局状态管理【简单小案例】

原文:https://www.cnblogs.com/suni1024/p/12022675.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!