如何在Vue项目中使用vuex.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

如何在Vue项目中使用vuex

目录在Vue项目中使用vuex一、安装vuex二、创建store三、挂载store四、在组件中使用五、在Vue组件中监听Vuex总结

在Vue项目中使用vuex

在一个vue项目中使用vuex,需要根据项目来源分两种情况:

第一种情况:在老项目中使用。先额外安装vuex包,然后在配置。第二种情况:在新项目中使用。在配置vue-cli中创建项目时,就可以直接选中vuex项,这样就不用做任何配置了(脚手架会自动帮我们完成的)。

具体如下图示:

这里我们主要说明第一种情况,在一个老项目中如何使用vuex,步骤如下:

1.首先安装vuex包,安装完之后开始配置

2.在src目录下创建一个文件夹store,在store文件夹中新建一个index.js文件

3.创建Vuex.store实例:index.js中进行如下配置:

4.向Vue实例注入store:main.js中进行如下配置:

5.配置完后就可以在任意组件中使用了

在任意组件中,通过this.$store.state来获取公共数据,在模板中,则可以省略this而直接写成:{{$store.state.属性名}}

一、安装vuex

npminstallvuex--save

二、创建store

在项目src目录下创建store目录,在store目录中创建index.js文件。

写入一下内容:

importVuefromvue

importVuexfromvuex

//挂在Vuex

Vue.use(Vuex)

//创建Vuex对象

conststore=newVuex.Store({

state:{

//存放的键值对就是所要管理的状态

//以key:value为例

key:value,

mutations:{

setKey(state,payload){

state.key=payload;

exportdefaultstore

三、挂载store

在main.js中,添加代码:

importstorefrom./store

newVue({

el:#app,

router,

store:store,//store:store和router一样,将我们创建的Vuex实例挂载到这个vue实例中

components:{App},

template:App/

})

四、在组件中使用

将需要使用的值写在computed中:

computed:{

??key(){

????returnthis.$store.state.key;

??}

}

如果在组件中使用v-model绑定computed中的值,需要在computed中定义set方法,如下:

computed:{

??key:{

????get(){

??????returnthis.$store.state.key;

????},

????set(val){

??????this.$mit(setKey,val);

????}

??}

}

五、在Vue组件中监听Vuex

在Vue组件中监听Vuex:

通过computed获取vuex中的状态值。通过watch监听值的改变。

computed:{

??key(){

????returnthis.$store.state.key;

??}

watch:{

??key(val){

????//要做的操作

??}

}

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。

文档评论(0)

158****0778 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档