vue状态管理

本文介绍了两种在Vue项目中使用Vuex进行状态管理的方法。一种是在脚手架创建项目时选择Vuex1,通过mapState映射函数在组件中导入和使用状态数据。另一种是后期手动添加Vuex,包括安装、创建store、在main.js中导入并绑定到Vue实例,以及在组件中使用和修改状态数据。
摘要由CSDN通过智能技术生成

方法一 , 在脚手架创建项目时,选择vuex
1, 在组件中使用状态数据 
    // 从vuex中按需导入状态数据的映射函数mapState
      import { mapState } from 'vuex'
    // 使用映射函数把状态数据state映射到计算属性中
        computed: {
          ...mapState(["isLogin"])
        }
    <!-- state在映射到计算属性中之后,当作计算属性来用 -->
        登录状态: {{isLogin}}


2, 在组件中修改状态数据

    this.$store.commit("setLogin", true)


------------------------------------------------------------------------
方法二:  在项目写一半时手动添加(最新版为5.0.0, 此处示例为v3.6.2版本)
1, 下载安装vuex模块 (安装最新版4.0会报错)
    cnpm i vuex@3.6.2 --save
2, 在/src目录下新建文件   /src/store/index.js   导入vuex
    import Vue from 'vue'
    import Vuex from 'vuex'
    Vue.use(Vuex)
3, 在/src/store/index.js中创建管理仓库, 并导出
    export default new Vuex.Store({
          state: {
         },
          mutations: {
          }
    })
4, 在main.js中导入store/index.js状态管理仓库, 帮把它添加到vue根组件中
    import store from './store'
    new Vue({router, store})
5, 在组件中使用状态数据 
    // 从vuex中按需导入状态数据的映射函数mapState
      import { mapState } from 'vuex'
    // 使用映射函数把状态数据state映射到计算属性中
        computed: {
          ...mapState(["isLogin"])
        }
    <!-- state在映射到计算属性中之后,当作计算属性来用 -->
        登录状态: {{isLogin}}


6, 在组件中修改状态数据

    this.$store.commit("setLogin", true)
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值