学习笔记

  • 作者:o_Ming

    • vuex

Vuex

++ state ++ (用于存储全局数据)

  • 组件访问 state 中的全局数据的方式1
this.$store.state.全局数据
  • 组件访问 state 中的全局数据的方式2
// 组件中按需导入 mapState 函数
import { mapState } from 'vuex'
export default {
name: 'app',
computed: {
// 将全局数据 映射 为计算属性
...mapState(['inputValue'])
},
}
<p>{{ inputValue }}</p>

++ mutations ++ (用于变更store存储的数据,不要在mutations中进行异步操作)

  • 调用mutations的方式1
// 在store中定义
mutations: {
add(state,param1){
state.count = param1
}
}
// 在组件中调用
this.$store.commit('add',param1)
  • 调用mutations的方式2
import { mapMutations } from 'vuex'
// 将指定的mutations函数,映射为组件的methods函数
export default{
methods: {
...mapMutations(['add']),
fun(){
this.add()
}
}
}

++ getters ++ (用于对Store中的数据加工处理形成新的数据)

  • 定义 getters
getters: {
showNum: state => {
return '当前最新的数据是: ' + state.count
}
}
  • 使用 getters

    • 方式1this.$store.getters.名称

    • 方式2

import { mapGetters } from 'vuex'
export default {
name: 'app',
computed: {
...mapGetters(['showNum'])
}
}
<p>{{ showNum }}</p>
  • getterscomputed (都可以缓存计算结果)
getters: {
format(state){
console.log("getters format 执行")
return state.txt + " Vuex"
}
}
<!-- "getters format 执行" 这句话只会执行一次 -->
<h1>{{ this.$store.getters.format }}</h1>
<h1>{{ this.$store.getters.format }}</h1>
<h1>{{ this.$store.getters.format }}</h1>
<h1>{{ this.$store.getters.format }}</h1>
<h1>{{ this.$store.getters.format }}</h1>
computed: {
format(){
console.log("computed format 执行")
return this.msg + " yeap!"
}
}
<!-- "computed format 执行" 这句话只会执行一次 -->
<h1>{{ this.format }}</h1>
<h1>{{ this.format }}</h1>
<h1>{{ this.format }}</h1>
<h1>{{ this.format }}</h1>
<h1>{{ this.format }}</h1>

++ actions ++ (用于执行异步操作)

  • 定义
mutations: {
add(state){
state.count++
}
}
actions: {
addAsync(context){
setTimeout(() => {
context.commit('add')
},1000)
}
}
  • 触发

    • 方式1this.$store.dispatch('addAsync')
    • 方式2
import { mapActions } from 'vuex'
export default {
name: 'app',
methods: {
...mapActions(['addAsync']),
// this.addAsync()
}
}
<button @click='addAsync'></button>

坚持就是胜利!

【Vue学习笔记】—— vuex的语法 { }的更多相关文章

  1. Vue学习笔记:Vuex

    为什么需要Vuex 管理共享状态 解决一份数据在多个组件中试用的困难 系统化的状态管理,区别于小型状态过来 底层设计模式: 全局单例模式 应用场景 适合中大型项目: 小项目反而会因为引入更多概念和框架 ...

  2. VUE 学习笔记 三 模板语法

    1.插值 a.文本 数据绑定最常见的形式就是使用“Mustache”语法 (双大括号) 的文本插值 <span>Message: {{ msg }}</span> v-once ...

  3. Vue学习笔记-Vue.js-2.X 学习(四)===>脚手架Vue-CLI(基本工作和创建)

    (五) 脚手架Vue-CLI 一 Vue-CLI前提(nodejs和webpack) 二  Vue学习-nodejs按装配置,Node.js 就是运行在服务端的 JavaScript. 1. 去nod ...

  4. Vue学习笔记-2

    前言 本文非vue教程,仅为学习vue过程中的个人理解与笔记,有说的不正确的地方欢迎指正讨论 1.computed计算属性函数中不能使用vm变量 在计算属性的函数中,不能使用Vue构造函数返回的vm变 ...

  5. vue学习笔记(八)组件校验&通信

    前言 在上一章博客的内容中vue学习笔记(七)组件我们初步的认识了组件,并学会了如何定义局部组件和全局组件,上一篇内容仅仅只是对组件一个简单的入门,并没有深入的了解组件当中的其它机制,本篇博客将会带大 ...

  6. vue学习笔记(十)路由

    前言 在上一篇博客vue学习笔记(九)vue-cli中的组件通信内容中,我们学习组件通信的相关内容和进行了一些组件通信的小练习,相信大家已经掌握了vue-cli中的组件通信,而本篇博客将会带你更上一层 ...

  7. vue学习笔记(三)class和style绑定

    前言 通过上一章的学习vue学习笔记(二)vue的生命周期和钩子函数,我们已经更近一步的知道了关于vue的一些知识,本篇博客将进一步探讨vue其它方面的内容,vue中关于class和style绑定,关 ...

  8. Vue学习笔记-Vue.js-2.X 学习(六)===>脚手架Vue-CLI(项目说明-Babel)

    五  Vue学习-vue-cli脚手架学习(创建只选一个选项:Babel) 1. 项目目录说明 node_modules : 包管理文件夹 public : 静态资源 src : 源代码 gitign ...

  9. Vue学习笔记-Vue.js-2.X 学习(二)===>组件化开发

    ===重点重点开始 ========================== (三) 组件化开发 1.创建组件构造器: Vue.extends() 2.注册组件: Vue.component() 3.使用 ...

  10. Vue学习笔记-Vue.js-2.X 学习(一)===>基本知识学习

    一  使用环境: windows 7 64位操作系统 二  IDE:VSCode/PyCharm 三  Vue.js官网: https://cn.vuejs.org/ 四  下载安装引用 方式1:直接 ...

随机推荐

  1. oracle-安装与访问、卸载

    安装oracle 官网(http://oracle.com/ )下载oracle -->Oracle Database -->点击接受Accept --> 下载11g(Downloa ...

  2. React技巧之导入组件

    正文从这开始~ 总览 在React中,从其他文件中导入组件: 从A文件中导出组件.比如说,export function Button() {} . 在B文件中导入组件.比如说,import {But ...

  3. 抓包整理外篇——————autoResponder、composer 、statistics [ 三]

    前言 经过了前文的介绍的部分已经能够为自己抓包提供一个舒适的环境了,但是舒服的拿到我们的包后,可能有些需求还是难以搞定,fiddler 提供了我们一些其他模块,让我们工作轻松,请往下看. 正文 aut ...

  4. SELECT 的6大子句

    SELECT 6大子句的顺序: SELECT selection_list /*要查询的列名称*/, 结果的字段列表 FROM table_list /*要查询的表名称*/, 后面跟表,视图,多行多列 ...

  5. MISC 2022/4/21 刷题记录-千字文

    1.千字文 得到名为png的无类型文件,010 Editor查看,png,改后缀,得到二维码 QR扫描,得到一句话"这里只有二维码" 思路不对,binwalk一下,发现有错误信息 ...

  6. Css3入门详解

    一.Css基本语法 1.Html和Css没分开时 点击查看代码 <!DOCTYPE html> <html lang="en"> <head> ...

  7. 1 什么是Zookeeper 能干什么

    1 Zookeeper 概述 美团,饿了么,淘宝,58 同城等等应用都是 zookeeper 的现实生活版 博主我开了个饭店,如何才能让大家都能吃到我们的饭菜?需要入驻美团,这样大家就可以在美团 ap ...

  8. String类型函数传递问题

    String类型函数传递问题 问题 以前没有注意过的一个问题, 最近在使用String类型作为函数入参的时候, 发现函数内对于String类型的改变并不会影响到外层调用对象本身; 结论 (先说结论) ...

  9. V.Internet基础及应用

  10. 树莓派4B串口测试与开发

    参考文档: https://shumeipai.nxez.com/2021/08/09/raspberry-pi-4-activating-additional-uart-ports.html 树莓派 ...