Vuex简单使用

<template>

<div class="home">

<!-- {{this.$store.state.count}} -->

<!-- 这里的count1是从index.js里面的state里面拿出来的 -->

{{count1}}

     <!-- 可以在事件后面传参数,比如数字1 -->

<button @click="add(1)">+</button>

<button @click="jian">-</button>

</div>

</template>

<script>

import {mapState,mapActions} from "vuex"

export default {

data(){

return{

}

},

computed:{

//  count1(){

//   return this.$store.state.count

//  }

    //下面这个是用来获取页面count值 注: 使用({})语法

...mapState({

count1:state=>state.count

})

},

methods:{

  //用来向index.js里面的actions传下面这两个事件 注: 使用([])语法

...mapActions([

‘add‘,

‘jian‘

])

}

}

</script>

//下面是index.js页面

import Vue from ‘vue‘

import Vuex from ‘vuex‘

Vue.use(Vuex)

export default new Vuex.Store({

state: {

count:1

},

mutations: {

add(state,a){

state.count++;

/

  console.log(a)

},

jian(state)

{

if(state.count>1)

{

state.count--

}

}

},

actions: {

  //这个地方可以用来接收我们点击的时候事件传过来的参数a 在context后面加逗号写参数就可以

add(context,a){

context.commit("add",a)

},

jian(context){

context.commit("jian")

}

},

modules: {

}

})

//总结 actions用来操作mutations  然后再通过mutations来操作state

原文地址:https://www.cnblogs.com/LC123456/p/12024985.html

时间: 2024-10-09 11:54:35

Vuex简单使用的相关文章

vuex简单示例

一.vuex是什么,解决了什么问题? 官方解释是:Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式.它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化.个人理解是因为vue各个组件是相对独立的,要共享数据,就变的很麻烦.vuex就是为了解决各个组件传递数据与共享数据. 二.vuex的核心概念 vuex的核心概念是store,store中包括了state,mutation,action,getter 1.state:需要用到的状态变量2.mut

vuex简单----&gt;复杂----&gt;模块

话不多说,开干. 首先,使用vue-cli3创建一个项目 选择最后一个 选择自己需要的功能,安装之 最终项目的目录如下: 为了使讲解更简单明了,我们修改一下目录下的一些文件,将app.vue下的文件都注释掉,如下图: 现在我们开始一个最简单的vuex应用.打开store.js文件,编辑如下 : 打开App.vue文件,编辑如下: main.js文件不需要做修改,然后启动项目: 最终显示结果如下: 是的,这就是最简单的一个vuex应用了. State 如果世界上任何事情都是如此简单,那这个世界就太

vuex: 简单(弹窗)实现

在使用基于 vue.js 2.0 的UI框架 ElementUI 开发网站的时候 , 就遇到了这种问题 : 一个页面有很多表单 , 我试图将表单写成一个单文件组件 , 但是表单 ( 子组件 ) 里的数据和页面 ( 父组件 ) 按钮交互的时候 , 它们之间的通讯很麻烦 : <!--父组件中引入子组件--> <template> <div> <a href="javascript:;" @click="show = true"&

vuex简单整理

index.js:入口文件 state.js:存储状态.也就是变量. getters.js:派生状态.也可以理解为set.get中的get.有两个可选参数,state.getters分别可以获取state中的变量和其它getters.和vue中的computed类似. mutations.js:提交状态修改.可以理解为set.get中的set.每一个mutation都有一个字符串的事件类型和回调函数.第一个参数默认为state.vuex中唯一修改state的方式,不支持异步操作.和vue中的me

vuex简单使用。

项目结构: 1:首先在项目中新建store.js文件,.js文件内容如下: import Vue from 'vue' import Vuex from 'vuex' Vue.use(Vuex) export default new Vuex.Store({ state:{ count:0 }, getters:{ addcountgetters(state){ return state.count + 4; } }, mutations:{//相当于methods,定义一些方法(同步).方法里

简简单单的Vue3(插件开发,路由系统,状态管理)

既然选择了远方,便只顾风雨兼程 __ HANS许 系列:零基础搭建前后端分离项目 系列:零基础搭建前后端分离项目 插件 路由(vue-router) 状态管理模式(Vuex) 那在上篇文章,我们讲了,Vue的生命周期,Vue的组件,那这篇文章我们讲下更进阶的:插件,路由,状态管理. 插件 插件通常会为 Vue 添加全局功能.插件的范围没有限制--一般有下面几种: 添加全局方法或者属性,如: vue-custom-element 添加全局资源:指令/过滤器/过渡等,如 vue-touch 通过全局

vue:简单方法替代vuex或者bus

兄弟组件,隔代组件传值很麻烦,方法虽然多,但都各有缺点. vuex: 适合数据量大,并且函数集中处理. bus:适合数据虽少,却不得不用的时候,维护困难. root:这儿指将值挂在root组件上,需要的组件都到root上去取. 有时候数据量不多,觉得引入vuex又使得项目变得沉重,使用全局bus又显得不好维护,使用跟组件更是感觉跟理念不符合. store:这就是介绍的简单方法.详细如下 需了解: 1.import 引入文件是引用的地址,并不是将数据复制一份,就是说该变了数据后,原文件的数据会发生

【mock.js】后端不来过夜半,闲敲mock落灯花 (附Vue + Vuex + mockjs的简单demo)

mock的由来[假] 赵师秀:南宋时期的一位前端工程师 诗词背景:在一个梅雨纷纷的夜晚,正处于项目编码阶段,书童却带来消息:写后端的李秀才在几个时辰前就赶往临安度假去了,!此时手头仅有一个简单的数据接口文档的赵师秀慨叹一声:"好吧,那还是我自己先模拟一下后端的接口吧" _(:3 」∠)_  再后来,就有了那句千古名句啦~~( 为了表示对赵师秀先生的歉意,文末我将附上原文)   如果我说这就是前后端分离思想和mock.js的由来,你会信么?(?´ω`?) mock的由来[真] 我们在Vu

vue的挖坑和爬坑之vuex的简单入门

首先vuex的中文文档https://vuex.vuejs.org/zh-cn/ 首先vuex是什么,官方解释是 Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式.它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化.Vuex 也集成到 Vue 的官方调试工具 devtools extension,提供了诸如零配置的 time-travel 调试.状态快照导入导出等高级调试功能. 我的理解是 就是vue组件之间的数据管理 event bus 对