vuex的使用_vuex具体使用场景

vuex的使用_vuex具体使用场景vuex的使用

大家好,又见面了,我是你们的朋友全栈君。

index.js

store文件下的基本文件

import Vue from 'vue'
import Vuex from 'vuex'
import * as actions from './actions'
import * as getters from './getters'
import state from './state'
import mutations from './mutations'
// 每次mutation 打印日志
import createLogger from 'vuex/dist/logger'

Vue.use(Vuex)

// 开启调试
const debug = process.env.NODE_ENV !== 'production'

export default new Vuex.Store({
  actions,
  getters,
  state,
  mutations,
  strict: debug,
  plugins: debug ? [createLogger()] : []
})
复制代码

state.js

管理状态

const state = {
  singer: {}
}
export default state
复制代码

mutations.js

更改 Vuex 的 store 中的状态的唯一方法是提交 mutation。Vuex 中的 mutation 非常类似于事件:每个 mutation 都有一个字符串的 事件类型 (type) 和 一个 回调函数 (handler)

import * as types from './mutation-type'

const mutations = {
  [types.SET_SINGER](state, singer) {
    state.singer = singer
  }
}

export default mutations
复制代码

mutation-type.js

管理mutations的名字

// 定义一些常量
export const SET_SINGER = 'SET_SINGER'
复制代码

action.js

异步操作或对mutation进行封装会在此书写


复制代码

getters.js

对state进行映射,即为store的计算属性

/* 将数据提交到组件 */
export const singer = state => state.singer
复制代码

在组件中提交 Mutation修改数据

使用 mapMutations 辅助函数将组件中的 methods 映射为 store.commit 调用

import { mapMutations } from 'vuex'
复制代码

在组件中取数据

<script type="text/ecmascript-6">
import { mapGetters } from 'vuex'
export default {
  computed: {
    ...mapGetters(['fullScreen', 'playList'])
  }
}
</script>
复制代码

转载于:https://juejin.im/post/5b98b137e51d450e6b0da887

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/107289.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 百度云个人服务器搭建

    百度云个人服务器搭建百度云个人服务器搭建前言背景​ 前段时间看了一些文章,就突发奇想的想自己做一个小程序。于是乎有了需求,然后自然就去实现他了。因为没有搭建过自己的服务器,其中的过程也挺有意思的,所以就写下来,纪念纪念。大家也就图个乐呵看看,搭建的步骤仅供参考~~​ 至于为什么是百度云的服务器,咳咳,是因为刚刚好发现百度云在做活动,1000多的服务器只要300多,对于我这种穷屌丝来说,试试手,成本低一点当然很重…

    2022年5月9日
    47
  • 5G学习(三)-SSB与初始接入

    5G学习(三)-SSB与初始接入SSB概念SSB是同步信号和PBCH块(SynchronizationSignalandPBCHblock)组合在一起的。它由主同步信号(PrimarySynchronizationSignals,简称PSS)、辅同步信号(SecondarySynchronizationSignals,简称SSS)、PBCH三部分共同组成。SSB频域位置可以从图中看到,SSB时域上共占用4个OFDM符号,频域共占用240个子载波(20个PRB),PSS位于符号0的中间127个子载波。SSS

    2022年6月17日
    465
  • lombok插件安装 idea 搜不到_浏览器flash插件安装

    lombok插件安装 idea 搜不到_浏览器flash插件安装Lombok官网ProjectLombok是一个java库,可以自动插入编辑器并构建工具,为您的java增添色彩。永远不要再写另一个getter或equals方法,使用一个注释,您的类具有一个功能齐全的构建器,自动化您的日志记录变量等等.需要下载的插件lombok.jar包(可去我那里下载lombok.jar)lombok插件sts或eclipse安装方法(下面为sts安装…

    2022年9月7日
    0
  • 教你实现一个天气实时查询微信小程序

    教你实现一个天气实时查询微信小程序文章目录博主绪言组件选择部署阶段组件选择组件变量安排组件布局js后端逻辑处理环节API处理环节函数处理环节结束语博主绪言天气之子app主要功能是选择地区(省,市,区或者县),然后获取当前信息,把所选择的地区信息显示在界面上,然后调用和风天气免费的API,获取当前选择地区的天气信息,并且获取天气图标,把所有获取的这些信息,美观地显示在界面上。以下是示例界面:组件选择部署阶段组件选择根据上…

    2022年5月14日
    58
  • 基于matlab的图像处理案例教程_matlab gui图像处理

    基于matlab的图像处理案例教程_matlab gui图像处理一、imfinfo函数——查看图像文件信息,注意参数是文件路径和文件名,不是图像对应的矩阵。imfinfo(‘C:\Users\zhulf\Desktop\1.jpg’)ans=Filename:’C:\Users\zhulf\Desktop\1.jpg’FileModDate:’19-Apr-201508:40:54′

    2022年10月4日
    1
  • python socket recvfrom_Python:socket.recvfrom()不返回任何地址

    python socket recvfrom_Python:socket.recvfrom()不返回任何地址我正在尝试编写示例here的Python版本,但是由于某种原因,我在客户端和服务器中对socket.recvfrom()的每次调用都将其地址返回值为None.我唯一能想到的可能是套接字是STREAM套接字,但是当我尝试将类型更改为socket.SOCK_DGRAM时,调用socket.listen()时出错.我该如何解决这个问题?defserver(port):sock=socket.soc…

    2022年7月23日
    7

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号