怎样使用vuex操作state对象

这次给大家带来怎样使用vuex操作state对象,使用vuex操作state对象的注意事项有哪些,下面就是实战案例,一起来看一下。

Vuex是什么?

VueX 是一个专门为 Vue.js 应用设计的状态管理架构,统一管理和维护各个vue组件的可变化状态(你可以理解成 vue 组件里的某些 data )。

Vue有五个核心概念,state, getters, mutations, actions, modules。

总结

state => 基本数据
getters => 从基本数据派生的数据
mutations => 提交更改数据的方法,同步!
actions => 像一个装饰器,包裹mutations,使之可以异步。
modules => 模块化Vuex

State

state即Vuex中的基本数据!

单一状态树

Vuex使用单一状态树,即用一个对象就包含了全部的状态数据。state作为构造器选项,定义了所有我们需要的基本状态参数。

在Vue组件中获得Vuex属性

•我们可以通过Vue的Computed获得Vuex的state,如下:

const store = new Vuex.Store({  state: {    count:0  }})const app = new Vue({  //..  store,  computed: {    count: function(){      return this.$store.state.count    }  },  //..})

登录后复制

下面看下vuex操作state对象的实例代码

每当 store.state.count 变化的时候, 都会重新求取计算属性,并且触发更新相关联的 DOM。

每一个 Vuex 应用的核心就是 store(仓库)。

引用官方文档的两句话描述下vuex:

1,Vuex 的状态存储是响应式的。当 Vue 组件从 store 中读取状态的时候,若 store 中的状态发生变化,那么相应的组件也会相应地得到高效更新。

2,你不能直接改变 store 中的状态。改变 store 中的状态的唯一途径就是显式地提交 (commit) mutation。这样使得我们可以方便地跟踪每一个状态的变化,从而让我们能够实现一些工具帮助我们更好地了解我们的应用。

使用vuex里的状态

1,在根组件中引入store,那么子组件就可以通过this.$store.state.数据名字得到这个全局属性了。

我用的vue-cli创建的项目,App.vue就是根组件

App.vue的代码

 

{{$store.state.count}}

import store from '@/vuex/store';export default { name: 'App', store}

登录后复制

在component文件夹下Count.vue代码

 

{{this.$store.state.count}}

export default { name:'count', }

登录后复制

store.js的代码

import Vue from 'vue'import Vuex from 'vuex'Vue.use(Vuex);const state = { count: 1}export default new Vuex.Store({ state,})

登录后复制

2,通过mapState辅助函数得到全局属性

这种方式的好处是直接通过属性名就可以使用得到属性值了。

将Component.vue的代码进行改变

 

{{this.$store.state.count}}--{{count}}

{{index2}}

import { mapState,mapMutations,mapGetters } from "vuex"; export default { name:'count', data:function(){ return { index:10 } }, //通过对象展开运算符vuex里的属性可以与组件局部属性混用。 computed:{...mapState(['count']), index2() { return this.index+30; } } , }

登录后复制

相信看了本文案例你已经掌握了方法,更多精彩请关注【创想鸟】其它相关文章!

推荐阅读:

如何使用vue中filter

怎样使用vue判断dom的class

以上就是怎样使用vuex操作state对象的详细内容,更多请关注【创想鸟】其它相关文章!

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

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2751222.html

(0)
上一篇 2025年3月8日 05:48:28
下一篇 2025年3月8日 05:48:34

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • 如何使用Vue实现拖拽功能

    这次给大家带来如何使用Vue实现拖拽功能,使用Vue实现拖拽功能的注意事项有哪些,下面就是实战案例,一起来看一下。 效果图: HTML代码: 位置 x:{{val.x}} y:{{val.y}} //注意这里要通过指令绑定函数将当前元素的位…

    2025年3月8日
    000
  • 你必须要注意的vue组件使用细节

    这次给大家带来你必须要注意的vue组件使用细节,vue组件使用细节的注意事项有哪些,下面就是实战案例,一起来看一下。 细节一 基础例子 运行结果: 以上大家都懂,这边就不多说,回到代码里,有时候我们需要 tbody 里面每一行是一个子组件,…

    2025年3月8日 编程技术
    200
  • 如何处理父组件中vuex方法更新state子组件不能及时更新渲染

    这次给大家带来如何处理父组件中vuex方法更新state子组件不能及时更新渲染,处理父组件中vuex方法更新state子组件不能及时更新渲染的注意事项有哪些,下面就是实战案例,一起来看一下。 场景: 我实际用到的是这样的,我父组件引用子组件…

    2025年3月8日
    200
  • 怎样使用vue中$refs

    这次给大家带来怎样使用vue中$refs,使用vue中$refs的注意事项有哪些,下面就是实战案例,一起来看一下。 一般来讲,获取DOM元素,需document.querySelector(”.input1″)获取这…

    编程技术 2025年3月8日
    200
  • 怎样使用vue实现选项卡及选项卡切换效果

    这次给大家带来怎样使用vue实现选项卡及选项卡切换效果,使用vue实现选项卡及选项卡切换效果的注意事项有哪些,下面就是实战案例,一起来看一下。 这里不跟大家再去把Vue文档上的一些指令用法或者基础知识再复述一遍,既然是从入门到实战,我直接将…

    2025年3月8日
    200
  • 如何使用vue webpack

    这次给大家带来如何使用vue webpack,使用vue webpack的注意事项有哪些,下面就是实战案例,一起来看一下。 在开发时,前后端分离同时进行开发。前端调用后端给的接口也是在局域网内部的。但是,当项目推到线上的时候,会从真实服务器…

    编程技术 2025年3月8日
    200
  • 如何使用vue-cli2.9.3

    这次给大家带来如何使用vue-cli2.9.3,使用vue-cli2.9.3的注意事项有哪些,下面就是实战案例,一起来看一下。 一、安装vue-cli 1.使用npm全局安装vue-cli(前提是你已经安装了nodejs,否则你连npm都用…

    2025年3月8日 编程技术
    200
  • 在Vuex中mutations与actions有什么区别?(详细教程)

    下面我就为大家分享一篇vuex中mutations与actions的区别详解,具有很好的参考价值,希望对大家有所帮助。 区分 actions 和 mutations 并不是为了解决竞态问题,而是为了能用 devtools 追踪状态变化。 事…

    编程技术 2025年3月8日
    200
  • 如何使用Vue中mixin

    这次给大家带来如何使用Vue中mixin,使用Vue中mixin的注意事项有哪些,下面就是实战案例,一起来看一下。   vue中提供了一种混合机制–mixins,用来更高效的实现组件内容的复用。最开始我一度认为这个和组件好像没啥…

    编程技术 2025年3月8日
    200
  • 如何使用Vue2.0配置mint-ui

    这次给大家带来如何使用Vue2.0配置mint-ui,使用Vue2.0配置mint-ui的注意事项有哪些,下面就是实战案例,一起来看一下。 最近开发项目的时候逐渐采用vue.js+mint-ui的技术栈,但是昨天开始配置开发环境的时候,遇到…

    2025年3月8日
    200

发表回复

登录后才能评论