vuex

1.vuex的优点:

    不同组件数据保持同步

    数据的修改都可追踪

2.vuex存储

    多个组件共享状态,才存储在vuex中

    某个组件中的私有数据,存储在该组件的data中

3.vuex官网地址:https://vuex.vuejs.org/zh/

    在vue项目中引入:npm i vuex

    vuex固定配置:

4.创建store仓库

    建议在src下创建一个新的文件夹,在其中的index.js中进行创建。代码如下:

    在main.js中引入该文件,并引入到Vue中,路径中index.js是默认寻找的,可省略

5.vuex-state数据源

    定义:

    使用:方式1————this.$store.state.变量名

                方式2————映射使用

        首先,引入vuex中的mapState,在计算属性computed中展开,然后即可当作data中的值一样使用。

6.vuex-mutations同步修改

mutations是唯一能修改state的地方, 确保调试工具可以追踪变化

    mutations函数内, 只能写同步代码, 调试工具可追踪变化过程

因为调试工具要立刻产生一次记录, 所以必须是同步的

    创建:

    使用:mutations的使用也分为两种方式

                方式1:this.$store.commit("方法名",参数)

                方式2:映射方式代码如下

首先个button按钮一个点击事件,点击时触发myFn方法

引入mapMutations,此为vuex中固定,不可修改

在方法中进行解构,然后在点击时,触发myFn方法后进行调用

7.

vuex-actions

异步修改

    创建:

注意:此处调用mutation中的方法去修改值,通过store.commit(方法名,参数)

使用:1.this.$store.dispatch("异步方法名", 参数);

                    2.映射方式代码如下,大致与mutation相同:

创建一个按钮,给click事件添加方法

引入mapActions

在methods中解构,在事件触发时调用

8.vuex-getters

    vuex身上的全局状态-计算属性, 类似于computed

    getters 依赖于 state中原始数据的变化,并返回计算后的新数据

    定义:

需return值给计算属性

    使用(与state的使用方式大致相同):

            1.this.$store.getters.计算属性名

            2.映射方法:

引入mapGetters

在computed中解构,结构后与data的使用方法相同

作者:泽源_30dd

链接:https://www.jianshu.com/p/ca3f2f89a5ed

来源:简书

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容