vuex this.$store,vue this.$store

  vuex this.$store,vue this.$store

  这篇文章主要介绍了状态管理中这个. store.commit()和这个store.dispatch()区别说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

  

目录

  这个. store.commit()和这个store.dispatch()的区别提交:同步操作派遣:异步操作其他了解状态管理应用实例这个. store.commit()触发新建文件夹商店,商店下头部公共组件成分文件夹下

  

this.$store.commit()和this.$store.dispatch()的区别

  两个方法其实很相似,关键在于一个是同步,一个是异步

  

commit: 同步操作

  这个. store.commit(方法名,值) //存储

  这个store.state .方法名 //取值

  

dispatch: 异步操作

  这个. store.dispatch(方法名,值) //存储

  这个store.getters .方法名 //取值

  当操作行为中含有异步操作,比如向后台发送请求获取数据,就需要使用行为的派遣去完成了,其他使用犯罪即可。

  

其他了解

  提交=突变,用来触发同步操作的方法。派遣=行动,用来触发异步操作的方法。在store中注册了mutation和action

  在组件中用派遣调用行动,用犯罪调用变化

  

Vuex应用实例this.$store.commit()触发

  

新建文件夹store,store下

  action.js

  常量操作={}

  导出默认操作;

  getter.js

  const getters={}

  导出默认吸气剂

  突变类型。射流研究…

  export const public setevent= public setevent ;

  突变。射流研究…

  从""导入{publicSetEvent} ./突变类型;

  常量突变={

  [publicSetEvent]: (state,json)={

  //初始化默认,避免跳转路由时的公用部分显示的相互影响

  状态。public set={ head title:true,headNav: false,sTitle:头部标题}

  //是否显示头部标题

  状态。公共场景。头标题=JSON。标题 州名。公共场景。头标题;

  //是否显示头部标签栏切换

  状态。公共场景。头导航=JSON。航向导航 状态。公共场景。nav主管。

  //头部显示的标题文字

  状态。公共场景。s title=JSON。标题 状态。公共场景。的标题;

  //tabbar的标题文字及待办标记数字

  状态。公共场景。navlist=JSON。navlist 州。公共场景。navlist

  }

  }

  导出默认突变;

  索引。射流研究…

  从“vue”导入某视频剪辑软件

  从" vuex "导入状态管理

  从导入突变。/突变;

  从导入吸气剂./getters ;

  从导入操作./actions ;

  vue。使用(Vuex);

  常量状态={

  公共集:{//设置公共头

  标题:没错,

  导航标题:假,

  标题: 头部标题

  }

  }

  const store=new Vuex .商店({

  状态,

  吸气剂,

  突变,

  行动

  });

  导出默认存储;

  

头部公共组件components文件夹下

  v字头。某视频剪辑软件

  模板

  div class=v-header

  s title= public set。 head title :s title= public set。s标题/v标题

  /div

  /模板

  脚本

  从导入标题./v-title ;

  从" vuex "导入{ mapState };

  导出默认值{

  名称:"五形头",

  组件:{vTitle},

  data(){

  返回{

  }

  },

  计算值:{

  .mapState([publicSet])

  }

  }

  /脚本

  五-标题。某视频剪辑软件

  模板

  div class=" v-title "

  x header:left-options= { back text: } :title= s title /x header

  /div

  /模板

  脚本

  从" vux "导入{ XHeader }

  导出默认值{

  名称:“v-title”,

  道具:[stitle],

  组件:{XHeader},

  data (){

  返回{

  }

  },

  方法:{

  }

  }

  /脚本

  style lang=less

  /风格

  App.vue

  模板

  div id=应用程序

  vHeader/vHeader

  路由器-视图/

  /div

  /模板

  脚本

  从" @/组件/标题/垂直标题"导入vHeader

  导出默认值{

  名称:"应用程序",

  组件:{vHeader}

  }

  /脚本

  主页。射流研究…

  从“vue”导入某视频剪辑软件

  从导入应用程序 0.5/App

  从导入路由器。/路由器

  从" vuex "导入状态管理

  从导入存储。/商店

  Vue.use(Vuex)

  Vue.config.productionTip=false

  新Vue({

  埃尔: #app ,

  路由器,

  店,

  组件:{ App },

  模板:"应用程序/"

  })

  页面调用索引。某视频剪辑软件

  模板

  div class=索引

  /div

  /模板

  脚本

  导出默认值{

  名称:"索引",

  data(){

  返回{

  }

  },

  已创建(){

  },

  beforeRouteEnter(收件人,发件人,下一个){

  let option={

  标题:没错,

  标题:我是新标题

  }

  console.log(可选);

  接下来(虚拟机={

  vm。$store.commit(publicSetEvent ,option);

  })

  },

  方法:{

  }

  }

  /脚本

  style lang=less

  /风格

  进入索引页面,您可以看到公共标题。

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

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: