19-2.vuex

目录

1  安装

2  挂载

2.1  vue2写法

2.2  vue3写法

3  state

3.1  声明数据

3.2  使用数据

3.3  处理数据

4  mutations

4.1  基本使用

4.2  传递参数

4.3  mutations中不能写异步的代码

5  actions

5.1  基本使用

5.2  传递参数

6  getters


Vuex是做全局数据共享的,如果不使用vuex,每个组件的数据传来传去的很麻烦

我们下面通过vue3来使用vuex

1  安装

2  挂载

2.1  vue2写法

2.2  vue3写法

3  state

state是放数据用的

3.1  声明数据

声明的数据所有的组件都可以使用

3.2  使用数据

也可以用下面这种方式使用数据,下面这种方式感觉麻烦一些

3.3  处理数据

你可以这样搞

这样搞是可以生效的,点击按钮后something的值会+1

但是vuex不建议你这样搞,因为这样你会把函数定义的哪里都有,你改起来很麻烦。vuex建议你使用mutations

4  mutations

4.1  基本使用

mutations存放 操作state中的数据的函数,函数不能包含异步操作,我们做个例子

先在mutations中定义改变something的函数

然后在组件中使用

最后把组件在app中渲染

4.2  传递参数

定义

可以成功实现效果

用下面这种方法也可以在组件中使用mutations,相较于上面的方法我觉得麻烦了一些

4.3  mutations中不能写异步的代码

我们写一个看看

点击按钮过1s后,虽然页面上的值改变了,但是state中的值没有改变

如果你要执行异步操作,你需要使用action

5  actions

5.1  基本使用

action存放 操作state中的数据的函数的异步操作部分,action如果想操作state中的数据,只能配合mutations使用,我们做个例子

  • 如果你不操作state中的数据就不用配合mutations,比如就单单发一个axios请求

在点击按钮的1s后,页面上的值发生了改变,state中的值也发生了改变

5.2  传递参数

像我们上面的例子就把 88 写死了,这样不是很好用,如果要通过action传递参数,我们可以这样写

1s后页面上的值改变了,state中的值也改变了

用下面这种方法也可以在组件中使用actions,相较于上面的方法感觉麻烦了些

6  getters

getters相当于是vuex中的计算属性,你可以在getters对state的值进行加工,我们做个例子

定义getters

使用getters

打开后是这样的

点击一下按钮getters的值也会发生相应的改变

也可以用下面这种方法在组件中使用getters,相较于上面的方法,下面的就麻烦了些

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/22222.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Spring:JDBCTemplate

JDBCTemplate 概述 概述 JDBC(Java DataBase Connectivity,Java 数据库连接), 一 种用于执行 SQL 语句的 Java API(Application Programming Interface , 应用程序设计接口 ),可以为…

pytest.ini 文件说明

pytest.ini 文件是用于配置 pytest 测试用例运行规则的文件。pytest.ini 配置文件支持的参数有以下几类: 匹配测试文件和测试函数的过滤参数测试用例执行参数测试报告输出参数临时文件及路径参数插件参数 以下是一些常见的 pytest.ini 配置参数及其用法示例&#…

2023年08月IDE流行度最新排名

点击查看最新IDE流行度最新排名(每月更新) 2023年08月IDE流行度最新排名 顶级IDE排名是通过分析在谷歌上搜索IDE下载页面的频率而创建的 一个IDE被搜索的次数越多,这个IDE就被认为越受欢迎。原始数据来自谷歌Trends 如果您相信集体智慧&am…

玄子Share - Mybatis 项目模板使用指南

玄子Share - Mybatis 项目模板使用指南 项目结构图 mybatis-config.xml 配置模板设置 参数 <?xml version"1.0" encoding"UTF-8" ?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "https://mybatis.…

【深度学习_TensorFlow】激活函数

写在前面 上篇文章我们了解到感知机使用的阶跃函数和符号函数&#xff0c;它们都是非连续&#xff0c;导数为0的函数&#xff1a; 建议回顾上篇文章&#xff0c;本篇文章将介绍神经网络中的常见激活函数&#xff0c;这些函数都是平滑可导的&#xff0c;适合于梯度下降算法。 写…

组合总和 II——力扣40

文章目录 题目描述法一 回溯 题目描述 法一 回溯 class Solution{ public:vector<pair<int, int>>freq;vector<vector<int>> res;vector<int> seq;void dfs(int pos, int rest){//如果目标值为0&#xff0c;说明可能有一个组合或者rest本身为0 …

落地数字化管理,提升企业市场竞争力

数字化企业管理方案是一种利用数字技术和信息系统来提升企业管理效率和运营效果的策略。 潜在的数字化企业管理方案 1、企业资源规划&#xff08;ERP&#xff09;系统&#xff1a;建立一个集成的ERP系统来统一管理企业的各项业务流程&#xff0c;包括采购、销售、库存管理、财…

使用上 Spring 的事件机制

本文主要是简单的讲述了Spring的事件机制&#xff0c;基本概念&#xff0c;讲述了事件机制的三要素事件、事件发布、事件监听器。如何实现一个事件机制&#xff0c;应用的场景&#xff0c;搭配Async注解实现异步的操作等等。希望对大家有所帮助。 Spring的事件机制的基本概念 …

npm -v无法显示版本号

情况&#xff1a; 删除C盘下.npmrc文件后解决。路径 C:\Users\Dell 记录一下这个解法。

Linux CentOS系统怎么下载软件

Linux CenOS系统想要下载软件可以在Linux内置的应用商店&#xff0c;并通过Yum 包管理器来下载&#xff08;直接使用yum命令下载软件&#xff09; 在Linux系统中&#xff0c;Yum&#xff08;Yellowdog Updater, Modified&#xff09;是用于管理RPM软件包的一个包管理器。 安装…

pytorch模型保存(save)与读取(load)

模型参数 1.仅保存学习到的参数,用以下命令 torch.save(model.state_dict(), PATH)2.加载model.state_dict model TheModelClass(*args, **kwargs) #加载模型类 model.load_state_dict(torch.load(PATH))#加载模型参数 model.eval() #推理模式整个模型状态 1.保存整个模型…

npm更新和管理已发布的包

目录 1、更改包的可见性 1.1 将公共包设为私有 ​编辑 使用网站 使用命令行 1.2 将私有包公开 使用网站 使用命令行 2、将协作者添加到用户帐户拥有的私有包 2.1 授予对Web上私有用户包的访问权限 2.2 从命令行界面授予私有包访问权限 2.3 授予对私有组织包的访问权限…

设计模式之简单工厂模式、工厂模式、抽象工厂模式

参考&#xff1a; 设计模式笔记 简单工厂模式 ● 将类的创建过程交给工厂类实现&#xff0c;如果需要一个类对象&#xff0c;则直接通过工厂创建一个类。 ● 简单工厂模式不符合开闭原则 ● 适用场景&#xff1a;工厂类负责创建的对象比较少&#xff1b;客户端只知道传入工厂…

shell命令

#!/bin/bash read -p "请输入一个文件名&#xff1a;" fileName posexpr index $fileName \. typeexpr substr $fileName $((pos1)) 2if [ $type sh ] thenif [ -x $fileName ]thenbash $fileNameelsechmod ax $fileNamefi firead -p "请输入第一个文件名&…

运输层---概述

目录 运输层主要内容一.概述和传输层服务1.1 概述1.2 传输服务和协议1.3 传输层 vs. 网络层1.4 Internet传输层协议 二. 多路复用与多路分解&#xff08;解复用&#xff09;2.1 概述2.2 无连接与面向连接的多路分解&#xff08;解复用&#xff09;2.3面向连接的多路复用*2.4 We…

区块链智能合约代码示例

以下是一个简单的区块链智能合约代码示例&#xff1a; pragma solidity ^0.4.17;contract SimpleContract {uint public myData;function setMyData(uint newData) public {myData newData;} }该合约具有以下功能&#xff1a; 定义了一个名为 SimpleContract 的合约。定义了一…

arcgis字段计算器

1、两字段叠加。要求待叠加的字段类型为文本或字符串类型。如下&#xff1a; 2、字符串部分提取。

坚鹏:中国邮储银行金融科技前沿技术发展与应用场景第2期培训

中国邮政储蓄银行金融科技前沿技术发展与应用场景第2期培训圆满结束 中国邮政储蓄银行拥有优良的资产质量和显著的成长潜力&#xff0c;是中国领先的大型零售银行。2016年9月在香港联交所挂牌上市&#xff0c;2019年12月在上交所挂牌上市。中国邮政储蓄银行拥有近4万个营业网点…

java工厂设计模式

Java中的工厂设计模式是一种创建型设计模式&#xff0c;它提供了一种将对象的创建逻辑抽象出来的方法&#xff0c;使得客户端代码不需要直接实例化具体的类&#xff0c;而是通过一个共同的接口来创建对象。这样可以降低代码之间的耦合性&#xff0c;提高代码的可维护性和可扩展…

性能测试怎么做?测试工具怎么选择?

在当前软件测试行业&#xff0c;熟练掌握性能测试已经是测试工程师们面试的敲门砖了&#xff0c;当然还有很多测试朋友们每天的工作更多的是点点点&#xff0c;性能方面可能也只是做过简单的并发测试&#xff0c;对于编写脚本&#xff0c;搭建环境方面也比较陌生。今天这篇文章…