Vuex 缺乏、安全感 2023-07-21 08:51 4阅读 0赞 ### ### * * 什么是Vuex?可以解决什么问题? * Vuex有哪些属性? * 使用方法 * 在组件中引入Vuex * Vuex dispatch和commit来调用mutations的区别 ## 什么是Vuex?可以解决什么问题? ## Vuex是Vue.js应用程序的状态管理模式+库。 Vuex是一个状态管理的插件,可以解决不同组件之间的数据共享和数据持久化。 ## Vuex有哪些属性? ## 1. state:即Vuex中的基本数据 2. getters:相当于state的计算属性 3. mutation:提交更改数据的方法,必须是同步函数 4. action:像一个装饰器,包裹mutations,使之可以异步 5. modules:模块化Vuex ## 使用方法 ## 在vue-cli已安装Vuex的情况下,直接引用。 **如果没有安装的话:** 1. 安装Vuex,使用命令:cnpm install vuex --save 进行安装 2. 在src下新建一个名为vuex的文件夹 3. vuex文件夹里面新建一个store.js ![在这里插入图片描述][20200403111647764.png] 4. 在刚刚创建的store.js引入vue和vuex,并且使用use Vuex ![在这里插入图片描述][20200403111811363.png] 5. 定义数据 ![在这里插入图片描述][20200403111922445.png] 6. 定义方法 ![在这里插入图片描述][20200403112259734.png] 7. 实例化Vuex.store ![在这里插入图片描述][20200403112322588.png] 8. 暴露 ![在这里插入图片描述][20200403112400941.png] 完整代码如下 import Vue from 'vue' import Vuex from 'vuex' Vue.use(Vuex); //state在vuex中用于储存数据 state=状态 var state = { count: 1 } // mutations里面放的是方法,方法主要用于改变state中的数据 mutations=改变 var mutations = { incCount(){ ++state.count; } } //vuex 实例化 Vuex.store const store = new Vuex.Store({ //store储存 state, mutations:mutations }) // 暴露 export default store; ## 在组件中引入Vuex ## 1、在组件中引入store.js 2、注册 ![在这里插入图片描述][20200403112534459.png] 3、获取state里面的数据 第一种:this.$store.state ![在这里插入图片描述][20200403112633386.png] 第二种: ![在这里插入图片描述][20200403112807286.png] 4、触发mutations改变state里面的数据 this.$store.commit(‘incCount’) ![在这里插入图片描述][20200403113009179.png] 完整代码如下 <template> <div class="hello"> <h1>{ { this.$store.state.count }}</h1> </div> </template> <script> import store from "../vuex/store.js" //引入store export default { data () { return { msg: store.state.count } }, store, //注册 methods:{ incCount(){ this.$store.commit('incCount'); /*触发 state里面的数据*/ } } } </script> ## Vuex dispatch和commit来调用mutations的区别 ## dispatch:含有异步操作,例如向后台提交数据。 写法:this.$store.dispatch('mutations方法名',值) commit:同步操作 写法:this.$store.commit('mutations方法名',值) [20200403111647764.png]: /images/20230528/574a178b74f44beb95eb217ede65a542.png [20200403111811363.png]: /images/20230528/0f782e28ed7e4b659ae2b1f65ed6bbfb.png [20200403111922445.png]: /images/20230528/6153b109b1444f5b875b5f947a40793e.png [20200403112259734.png]: /images/20230528/6e57893cc6084ddca16b658268128a1e.png [20200403112322588.png]: /images/20230528/369ca799cf7d4f1c9c5ade8e80f98c8d.png [20200403112400941.png]: /images/20230528/1be84180451c41e3bd2e2ddffa2d6f9b.png [20200403112534459.png]: /images/20230528/3b933ff67c8d4eb2ad408b7fcb6883c0.png [20200403112633386.png]: /images/20230528/c32a01d1d7804ead9ffd90f43b1e9ee9.png [20200403112807286.png]: /images/20230528/ad5cb36f1ab5449b82e20ad3d5f2439c.png [20200403113009179.png]: /images/20230528/beed71d3e8c6491d9ff15546538760ec.png
相关 Vuex 一、vuex vuex是实现组件状态(数据)管理的一种机制,可以方便的实现组件之间数据的共享。 1. 安装vuex npm install Vuex --s 蔚落/ 2022年10月28日 15:29/ 0 赞/ 207 阅读
相关 vuex 原文 https://segment.com/a/119000000501564 原文: [Learn Vuex by Building a Notes App][] ,有删 朱雀/ 2022年05月30日 00:05/ 0 赞/ 315 阅读
相关 vuex 转自:https://segmentfault.com/a/1190000007516967 正文 关于vuex类的新闻最近很多,看到眼热就去查了下资料,然后扯出来 逃离我推掉我的手/ 2022年05月26日 09:42/ 0 赞/ 279 阅读
相关 vuex 转自: https://segmentfault.com/a/1190000009404727 如果你在使用 `vue.js` , 那么我想你可能会对 vue 组件之 以你之姓@/ 2022年05月26日 02:13/ 0 赞/ 282 阅读
相关 Vuex Vuex 是⼀个专为 Vue.js 应⽤程序开发的状态管理模式。它采⽤集中式存储管理应⽤的所有组件的状 态,并以相应的规则保证状态以⼀种可预测的⽅式发⽣变化。 谁践踏了优雅/ 2022年05月14日 04:18/ 0 赞/ 331 阅读
相关 vuex vuex在项目中维护一个状态,在项目中的作用是一个唯一的数据源, 相当于全局对象,各个组件共享这一个对象 初始化一个新项目 vue init webpack myv 快来打我*/ 2022年04月12日 05:56/ 0 赞/ 321 阅读
相关 vuex—1vuex初始 1.vuex是什么 ![watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4 落日映苍穹つ/ 2022年01月21日 03:37/ 0 赞/ 325 阅读
相关 vuex 自己的理解: 一: 第一种 state mutations actions getters 集中式管理 Vuex 是一个专为 Vue.js 应用程序开发 系统管理员/ 2021年08月28日 01:12/ 0 赞/ 522 阅读
相关 vuex > Vuex称为Vue的状态管理工具,也是多组件状态共享的工具 > > Vuex相当于是Vue的一个集中式的存储仓库 > > 它存储的是数据 【 状态 】 > 蔚落/ 2021年07月25日 15:08/ 0 赞/ 539 阅读
相关 Vuex Vuex 1. 什么是vuex Vuex 是一个专为 Vue.js 应用程序开发中管理的一个模式。 通过创建一个集中的数据存储,方便程序中的所有组件进行 青旅半醒/ 2021年07月24日 18:56/ 0 赞/ 699 阅读
还没有评论,来说两句吧...