美文网首页
vuex入门内容的一些整理

vuex入门内容的一些整理

作者: 考古羊 | 来源:发表于2018-03-06 15:22 被阅读0次

关于Vuex的一些内容

  1. state组件中的状态和数据都会被保存在一个统一的内存空间中管理,这个空间将其称为state;
  2. state中的数据可以方便地映射到组件中去渲染一个Vue Components;
  3. 当组件中的数据发生变化时,通过dispatch一个action(通常是一些异步操作或者是与后端的交互),然后commit一个mutation;或者也可以由组件直接去commit一个mutation。mutation是唯一一个可以修改state的途径;

常用场景

  1. 多个组件间的状态共享,例如一些兄弟组件或者关联度低的组件;
  2. 路由间的复杂数据传递,例如传递的参数较为复杂

例子


目录结构

vuex的初始化

state.js中存放数据状态,如下存放了一个singer的对象
const state = {
  singer: {}
}

export default state
mutations.js中存放的是更新数据的方法
mutation-types.js中存放的是方法的名字
//mutation-types.js文件
export const SET_SINGER = 'SET_SINGER'
//mutations文件
import * as types from './mutation-types'

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

export default mutations
getters.js
export const singer = state => state.singer
index是入口文件
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'
import createLogger from 'vuex/dist/logger' //打印日志

Vue.use(Vuex)

const debug = process.env.NODE_ENV !== "production" //线下环境进行debug

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

在总main.js中使用和注册store

……
import store from './store'//添加的部分
……
new Vue({
  el: '#app2',
  render: h => h(App),
  ……
  store, //添加的部分
  ……
  router
})

在组件中使用vuex

 methods: {
    selectSinger(singer) {
      ........
      this.setSinger(singer);//此处即使调用SET_SINGER,更新store中的singer
    },
...mapMutations({
      setSinger: "SET_SINGER"
    })
}
//获取到store中的singer
 computed: {
    ...mapGetters(["singer"])
  },

相关文章

  • vuex入门内容的一些整理

    关于Vuex的一些内容 state组件中的状态和数据都会被保存在一个统一的内存空间中管理,这个空间将其称为stat...

  • 后台管理(4)--- vuex的实际使用(vue)

    今天我们来讨论一下在项目中到底应该怎么使用vuex(vuex还没有入门的同学可以先看这个链接vuex 入门及持久化...

  • 轻松上手Vue - 简化Vuex

    PS: Vuex 对于很多初入门Vue的来说,入门困难,感觉非常绕。 Vuex 是一个专为 Vue.js 应用程...

  • vuex入门详解

    vuex最简单、最详细的入门文档 vuex最简单、最详细的入门文档 如果你在使用 vue.js , 那么我想你可能...

  • vuex入门

    vuex最简单、最详细的入门文档

  • 2020-03-25 vuex 全集

    Vuex入门(1)—— Vuex的设计初衷和简单使用 https://blog.csdn.net/dkr38020...

  • vuex其实超简单,喝完这3步,还有3步

    上一篇 vuex其实超简单,只需3步简单介绍了vuex的3步入门,不过为了初学者容易消化,我削减了很多内容,这一节...

  • vuex入门

    1.入门使用 (1)引入vuex (2)新建src/vuex文件夹,在vuex中新建store.js文件。文件中引...

  • Vue学习笔记

    0.参考文档 理解vuex -- vue的状态管理模式 vuex最简单、最详细的入门文档 vue+webpack项...

  • Vuex 进阶——模块化组织 Vuex

    上上篇:Vuex 入门 上一篇:Vuex 提升 前两篇讲解了一下 Vuex 的基本使用方法,可是在实际项目中那么写...

网友评论

      本文标题:vuex入门内容的一些整理

      本文链接:https://www.haomeiwen.com/subject/bmglfftx.html