VueX介绍和工作原理

这篇具有很好参考价值的文章主要介绍了VueX介绍和工作原理。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、VueX的作用

VueX就是在Vue中专门集中地管理数据的一个Vue插件。

在VueX中的数据不属于任何一个组件,所有的组价都可以访问和修改这个数据。

因此,当我们的多个组件依赖同一个状态(如用户信息)时,就可以使用VueX。

二、VueX的原理

VueX的工作原理可以用下面这张图来进行解释:

VueX介绍和工作原理,Vue,前端,javascript,vue.js

1.State

所有管理的数据都存放在VueX的State对象中。

通过render函数就可以将State中的数据渲染到Vue Components中。

2. Actions

用户所有对数据的操作都是在Vue Components中进行的,这时候就会有操作的"行为"和"数据"。

比如:用户点击了一下按钮,number+1,这里的+操作就是行为,number就是数据。

Vue Components通过pispatch方法将行为和数据传递给Actions对象。

Actions对象中存放着一系列的行为函数,就可以根据Vue Components传递过来的行为找到与之对应的函数。

3. Mutations

Actions在对应的行为函数中再调用commit方法将行为和数据传递给Mutations对象。

Mutation对象中存着所有的行为和数据,找到与之对应的行为函数,将数据和State中的数据进行相应的操作。

处理完成的数据又通过mutate函数存入State中。

4. Store

Store在图像中并未体现出来,下图中所有红色框住的部分都是Store的组成部分。

VueX介绍和工作原理,Vue,前端,javascript,vue.js

因此,我们在调用方法的时候就是在调用Store中的方法,如:Store.dispatch,Store.Mutations

5. 补充 

在上面Actions的介绍中,Actions显得很多余。

其实很多时候我们可以直接使用如下蓝色的这条线:

VueX介绍和工作原理,Vue,前端,javascript,vue.js

那我们在什么情况下要使用Actions对象?

当我们处理的数据需要通过后台API返回的数据进行处理的时候就要使用到Actions对象。 文章来源地址https://www.toymoban.com/news/detail-740100.html

到了这里,关于VueX介绍和工作原理的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Vue Vuex的使用和原理 专门解决共享数据的问题

    Vuex专门解决共享数据的问题 多组件共享时使用,如用户ID各组件需要根据ID发送请求获取数据,任意组件可以进行增删改,相当于全局变量 如果确定值参数可以不经过Actions 直接走 vue2使用 vuex@3 vue3使用 vuex@4 npm i vuex@3 一个两个组件 要求两个组件实现 加法运算,保存到const

    2024年02月05日
    浏览(37)
  • 【转】JavaScript 执行上下文——JS 的幕后工作原理

    转自译文: JavaScript 执行上下文——JS 的幕后工作原理 。 译文中图片不显示,要结合原文看,看着不方便。整理了一份含图片的。所以有了此篇的转载,以方便阅读。 以下是正文: 原文:JavaScript Execution Context – How JS Works Behind The Scenes,作者:Victor Ikechukwu 所有JavaScript代码

    2024年01月20日
    浏览(33)
  • 10 使用Vue+axios+Vuex实现登录后前端数据本地化存储实战

    这已经是《 Vue + SpringBoot前后端分离项目实战 》专栏的前端部分第8篇博客了, 服务端部分 由天哥(天哥主页)负责,目前专栏目录如下: Vue + SpringBoot前后端分离项目实战 - 前端部分 1. 手把手带你做一套毕业设计-征程开启 2. 我应该把毕业设计做到什么程度才能过关? 3

    2024年02月16日
    浏览(29)
  • vue中vuex的五个属性和基本用法,另加js-cookie的使用

    VueX 是一个专门为 Vue.js 应用设计的状态管理构架,统一管理和维护各个vue组件的可变化状态(你可以理解成 vue 组件里的某些 data )。 state, getters, mutations, actions, modules。 1. state: vuex的基本数据,用来存储变量 2. geeter: 从基本数据(state)派生的数据,相当于state的计算属性 3.

    2024年02月14日
    浏览(30)
  • vue3中状态管理库pinia的安装和使用方法介绍及和vuex的区别

    Pinia 与 Vuex 一样,是作为 Vue 的“状态存储库”,用来实现 跨页面/组件 形式的数据状态共享。它允许你跨组件或页面共享状态。如果你熟悉组合式 API 的话,你可能会认为可以通过一行简单的 export const state = reactive({}) 来共享一个全局状态。 当该数据、方法在很多地方都需要

    2024年01月20日
    浏览(39)
  • JavaScript - 判断当前时间是否在指定区间内,例如:9:00~12:00(检查当前时间是否处于规定的两个时间段范围内),适用于 vue.js / uniapp / 微信小程序等前端项目

    例如,您想知道当前时间是否处于 9:00 ~ 12:00 时间区间内,然后根据这个判断进而实现业务逻辑。 如下示例所示, 本文提供一个函数,您只需要传入 2 个时间区间,便可得出当前时间是否在该时间区间范围内: 您可以一键复制,直接粘贴到您的项目中。 您只需要传入开始时

    2024年02月16日
    浏览(50)
  • Vue前端的工作需求

    加油,新时代打工人! 需求: 实现带树形结构的表格,父数据显示新增下级,和父子都显示编辑。 技术: Vue3 +Element Plus

    2024年03月17日
    浏览(25)
  • vue前端开发准备工作ing...

    在项目开始前需要将项目的包管理工具问题解决,这里我使用的包管理工具是yarn。 安装yarn 在你的vue文件目录下的终端安装 npm i -g yarn 创建项目 如果你使用的npm包管理工具就使用如下命令创建项目 如果是yarn: 安装依赖 在你创建的项目文件下的终端安装 npm: npm install yarn:

    2024年01月17日
    浏览(33)
  • 前端随笔:HTML/CSS/JavaScript和Vue

    最近因为工作需要,需要接触一些前端的东西。之前虽然大体上了解过 HTML 、 CSS 和 JavaScript ,也知道 HTML 定义了内容、 CSS 定义了样式、 JavaScript 定义了行为,但是却没有详细的学习过前端三件套的细节。而最近的工作中需要使用 Vue ,并且想到未来的工作中使用 Vue 能够更

    2024年02月16日
    浏览(33)
  • JavaScript 框架比较:Angular、React、Vue.js

    在 Web 开发领域,JavaScript 提供大量技术栈可供选择。其中最典型的三套组合,分别是 MERN、MEAN 和 MEVN。这些首字母相同的选项各自代表不同的技术加工具组合。为了在这些技术栈中做出明智选择,让我们先从核心组件聊起,再对各自前端框架(React、Angular 和 Vue)进行简化比

    2024年01月20日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包