• vuex 实现vue不同组件之间的状态共享


    一、什么是vuex?

    Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。

    二、为什么要使用vuex?

    一般情况我们可以通过props、$emit在父子组件之间来回穿梭传值?抑或通过bus在组件之间共享值?无论哪种方式,都是极其麻烦或者可读性非常差的。而Vuex的引入很好的解决了这个问题,它把一些共享的属性(状态)集中的管理起来,使得你只需要关注Vuex中定义的state就可以了,state的变化会自动响应到引用了它的视图(页面组件)

    Vuex很好的解决了以下两个问题:

    1、多个视图依赖于同一状态。
    2、来自不同视图的行为需要变更同一状态。

    三、简单示例

    1、安装包

    NPM

    npm install vuex --save
    

    Yarn

    yarn add vuex
    

    2、建议把vuex单独放在一个模块

    src目录下新建 vuex 文件夹 新建 store.js

    import {createStore} from 'vuex';
    const store=createStore({
        state(){
            return{
                count:1
            }
        },
        mutations:{
            increment(state){
                state.count++
            }
        }
    })
    export default store     
    

    3、其它组件中使用

    this.$store.state.count
    this.$store.commit("increment")
    
  • 相关阅读:
    vue富文本编辑器
    vue图片上传组件
    vue全局使用axios插件请求ajax
    vue项目初始化时npm run dev报错webpack-dev-server解决方法
    vue axios使用form-data的形式提交数据
    react-keep-alive
    create-react-app 兼容 ie9
    next-定义路由
    next-支持css样式和按需加载antd
    react-错误边界
  • 原文地址:https://www.cnblogs.com/qingheshiguang/p/14676250.html
Copyright © 2020-2023  润新知