如何用vuex实现传值

分5步

1.在store文件夹下的modules文件夹下的setting.js文件下赋值。赋值位于state下,默认为空,也可以自定义赋值

const state = {
  // title: 'title',
  showSettings: showSettings,
  fixedHeader: fixedHeader,
  sidebarLogo: sidebarLogo,
  entitytype: "",
  id:"",
  formdata:""
}

2.在store文件夹下的getting.js文件下赋值

const getters = {
  sidebar: state => state.app.sidebar,
  device: state => state.app.device,
  token: state => state.user.token,
  avatar: state => state.user.avatar,
  name: state => state.user.name,
  
  entitytype: state => state.settings.entitytype,
  id: state => state.settings.id,
  formdata: state => state.settings.formdata,

}
export default getters

3.给其中一个组件里要传递的值进行定义

 methods: {  

      //点击左侧层级节点,跳转到对应页面
      handleNodeClick(data) {
       // console.log("点击左侧层级节点触发");

       this.$store.dispatch('settings/changeSetting',{'key': 'entitytype','value':data.entityType})
       this.$store.dispatch('settings/changeSetting',{'key': 'id','value':data.id})
       this.$store.dispatch('settings/changeSetting',{'key': 'formdata','value':data})
}

4. 另一个组件引入上一个组件。

<Aside ></Aside>
<h1>{{"实体类型:"+entitytype}}</h1>
   <h1>{{"ID:"+id}}</h1>


版权声明:本文为weixin_44008119原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。