iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >快速掌握Vue3.0中如何上手Vuex状态管理
  • 563
分享到

快速掌握Vue3.0中如何上手Vuex状态管理

2024-04-02 19:04:59 563人浏览 独家记忆
摘要

Vuex 是一个专为 vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。Vuex 也集成到 Vue

Vuex 是一个专为 vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。Vuex 也集成到 Vue 的官方调试工具 devtools,提供了诸如零配置的 time-travel 调试、状态快照导入导出等高级调试功能。
如果您不打算开发大型单页应用,使用 Vuex 可能是繁琐冗余的。确实是如此——如果您的应用够简单,您最好不要使用 Vuex。一个简单的 store 模式就足够您所需了。但是,如果您需要构建一个中大型单页应用,您很可能会考虑如何更好地在组件外部管理状态,Vuex 将会成为自然而然的选择。

一、State

由于 Vuex 的状态存储是响应式的,从 store 实例中读取状态最简单的方法就是在计算属性中返回某个状态:


import { computed } from 'vue'
import { useStore } from 'vuex'
export default {
  setup () {
    const store = useStore()
    return {
      count: computed(() => store.state.count)
    }
  }
}

二、Getters

Vuex 允许我们在 store 中定义“getter”(可以认为是 store 的计算属性)。就像计算属性一样,getter 的返回值会根据它的依赖被缓存起来,且只有当它的依赖值发生了改变才会被重新计算。


import { computed } from 'vue'
import { useStore } from 'vuex'
export default {
  setup () {
    const store = useStore()
    return {
      double: computed(() => store.getters.double)
    }
  }
}

三、Mutations

更改 Vuex 的 store 中的状态的唯一方法是提交 mutation。Vuex 中的 mutation 非常类似于事件:每个 mutation 都有一个字符串的 事件类型 (type) 和 一个 回调函数 (handler)。这个回调函数就是我们实际进行状态更改的地方,并且它会接受 state 作为第一个参数:


const store = createStore({
  state: {
    count: 1
  },
  mutations: {
    increment (state) {
      state.count++
    }
  }
})

你不能直接调用一个 mutation handler。这个选项更像是事件注册:“当触发一个类型为 increment 的 mutation 时,调用此函数。”要唤醒一个 mutation handler,你需要以相应的 type 调用 store.commit 方法:


store.commit('increment')

四、Actions

Action 类似于 mutation,不同在于:
Action 提交的是 mutation,而不是直接变更状态。
Action 可以包含任意异步操作。


const store = new Vuex.Store({
  state: {
    count: 0
  },
  mutations: {
    increment (state) {
      state.count++
    }
  },
  actions: {
    increment (context) {
      context.commit('increment')
    }
  }
})

Action 通过 store.dispatch 方法触发:


store.dispatch('increment')

五、Modules

由于使用单一状态树,应用的所有状态会集中到一个比较大的对象。当应用变得非常复杂时,store 对象就有可能变得相当臃肿。
为了解决以上问题,Vuex 允许我们将 store 分割成模块(module)。每个模块拥有自己的 state、mutation、action、getter、甚至是嵌套子模块——从上至下进行同样方式的分割:


const moduleA = {
  state: () => ({ ... }),
  mutations: { ... },
  actions: { ... },
  getters: { ... }
}
const moduleB = {
  state: () => ({ ... }),
  mutations: { ... },
  actions: { ... }
}
const store = createStore({
  modules: {
    a: moduleA,
    b: moduleB
  }
})

六、vuex-persistedstate

当刷新页面,项目重新加载,vuex 会重置,所有状态回到初始状态,使用 vuex-persistedstate 可以避免这种情况。

1、安装


npm install --save vuex-persistedstate

2、使用


import Vuex from "vuex";
import createPersistedState from "vuex-persistedstate";
const store = new Vuex.Store({
  plugins: [createPersistedState()],
});

以上就是vue3.0中如何快速上手Vuex状态管理的详细内容,更多关于Vuex状态管理的资料请关注编程网其它相关文章!

--结束END--

本文标题: 快速掌握Vue3.0中如何上手Vuex状态管理

本文链接: https://www.lsjlt.com/news/126372.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 快速掌握Vue3.0中如何上手Vuex状态管理
    Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。Vuex 也集成到 Vue...
    99+
    2024-04-02
  • 脱颖而出:掌握 Vuex 状态管理的制胜法宝
    1. 介绍 Vuex 是一个状态管理库,它可以帮助您管理应用程序的状态。Vuex 是一个集中式的状态管理模式,这意味着您可以在一个地方存储和管理应用程序的状态。这可以使您的应用程序更易于维护,并且可以提高应用程序的性能。 2. 安装 要...
    99+
    2024-02-21
    Vue Vuex 状态管理 组件 性能
  • VUE Vuex 状态管理:新手小白速成指南
    Vuex 介绍 Vuex 是一个专为 Vue.js 应用程序设计的集中式状态管理模式。它提供了一个中央存储,用于管理应用程序的状态,并允许组件以一种响应式的方式访问和修改状态。Vuex 简化了应用程序状态的管理和共享,提高了应用程序的可扩...
    99+
    2024-02-21
    Vuex 状态管理 Vue.js 集中式 可扩展性 可维护性
  • 集中式状态管理Vuex如何使用
    这篇文章主要讲解了“集中式状态管理Vuex如何使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“集中式状态管理Vuex如何使用”吧!1.vuex是什么一个专门在Vue中实现集中式状态管理的一...
    99+
    2023-07-05
  • 如何安装vue状态管理Vuex
    这篇文章主要介绍了如何安装vue状态管理Vuex,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。安装vue状态管理的方法:1、创建一个基于Vue的工程,执行“npm insta...
    99+
    2023-06-25
  • Vue 状态管理进阶指南:从新手到专家,掌握高级状态管理技巧
    : 1. Vue 状态管理基础 1.1 什么是状态管理? 状态管理是指在 Vue 应用程序中管理和维护应用程序状态的过程。应用程序状态包括用户输入、表单数据、服务器响应等。状态管理可以帮助开发者: 保持应用程序状态的一致性 提高应用程序...
    99+
    2024-02-24
    : Vue 状态管理 Vuex Redux MobX Pinia 状态管理技巧
  • Vue状态管理库Vuex如何使用
    本篇内容介绍了“Vue状态管理库Vuex如何使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Vue.js 是一个流行的 JavaScrip...
    99+
    2023-07-05
  • 如何优化vuex的状态管理方案
    这篇文章主要为大家展示了“如何优化vuex的状态管理方案”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何优化vuex的状态管理方案”这篇文章吧。在 vuejs...
    99+
    2024-04-02
  • vue状态管理模式之vuex如何实现
    小编给大家分享一下vue状态管理模式之vuex如何实现,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一、初始vuex1.1 vu...
    99+
    2024-04-02
  • Apache 与 ASP:如何在 Windows 系统上快速掌握?
    Apache 和 ASP 是两种非常流行的 Web 服务器和 Web 应用程序框架。Apache 是一个开源的 Web 服务器软件,而 ASP 是一种用于创建动态 Web 应用程序的 Microsoft 技术。本文将介绍如何在 Windo...
    99+
    2023-06-20
    apache 学习笔记 windows
  • 如何快速掌握Bash编程中的响应式处理?
    Bash编程是Linux系统管理员必备技能之一。在Bash编程中,响应式处理是一个非常重要的概念,它能够帮助我们处理输入、输出和信号等各种事件,让我们的脚本变得更加灵活和强大。本文将介绍如何快速掌握Bash编程中的响应式处理。 一、什么是响...
    99+
    2023-08-08
    编程算法 bash 响应
  • 如何快速掌握Python中的循环技术
    这篇文章主要讲解了“如何快速掌握Python中的循环技术”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何快速掌握Python中的循环技术”吧!1. 使用enumerate()循环整个序列当...
    99+
    2023-06-15
  • Linux中如何快速上手Samba
    这篇文章主要介绍了Linux中如何快速上手Samba,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,有服务...
    99+
    2023-06-27
  • linux中如何快速上手cpustat
    小编给大家分享一下linux中如何快速上手cpustat,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!cpustat ,一个用于linux下,非常简单的CPU使用...
    99+
    2023-06-27
  • PHP 分布式编程入门:如何在 Linux 上快速掌握?
    随着互联网技术的发展,分布式计算已经成为了一个非常热门的话题。分布式计算能够将一个大型的计算任务分解成多个小任务,并将这些小任务分配到不同的计算机上进行处理,从而提高计算效率。PHP 作为一门流行的编程语言,也能够进行分布式编程。在本文中...
    99+
    2023-11-05
    学习笔记 linux 分布式
  • Vuex模块化如何实现待办事项的状态管理
    这篇文章将为大家详细讲解有关Vuex模块化如何实现待办事项的状态管理,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。项目介绍待办事项中的一个事件,它可能拥有几个状态,未完成...
    99+
    2024-04-02
  • ASP 状态管理傻瓜指南:即使是新手也能轻松掌握动态数据存储
    ASP 状态管理是 Web 开发中非常重要的一个概念,它允许您在服务器端存储和检索动态数据,从而实现诸如用户身份验证、购物车管理、表单数据临时存储等功能。本文将深入浅出地介绍 ASP 状态管理的各种技巧和方法,帮助您轻松掌握动态数据存储的...
    99+
    2024-02-24
    ASP 状态管理 动态数据存储 session StateBag Cache
  • 如何快速掌握Go语言的自然语言处理?
    Go语言是一种高效、简洁、并发性强的编程语言,在自然语言处理领域中也得到了广泛的应用。如果您想要快速掌握Go语言的自然语言处理技能,本文将为您提供一些宝贵的建议和技巧。 一、了解自然语言处理的基础知识 在开始学习自然语言处理之前,您需要了解...
    99+
    2023-07-25
    教程 自然语言处理 异步编程
  • linux中如何快速上手Iftop命令
    这篇文章主要介绍linux中如何快速上手Iftop命令,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!Iftop的基本用法运行iftop命令,不带任何参数来查看默认界面的带宽使用情况,如下面的屏幕截图所示。$ ...
    99+
    2023-06-27
  • linux中如何快速掌握grep命令及正则表达式
    这篇文章将为大家详细讲解有关linux中如何快速掌握grep命令及正则表达式,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。快速了解正则表达式如何匹配你要查找的内容正则表达式只不过是每个输入行匹配的模式。在...
    99+
    2023-06-16
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作