Vuex使用过程的问题

  一、注册的全局组件无法使用

    main.js注册全局组件时:

      ① Vue.component(TypeNav.name, TypeNav);

      ② 改为:

      ③ Vue.component('TypeNav', TypeNav);

    且全局组件放在components文件夹中

  二、Vuex无法获取 请求 的数据

    在typeNav组件中

      ① this.$store.dispatch("categoryList"); 通知vuex发请求

    在vuex配置文件(store文件夹下home文件夹的配置文件)

    Actions响应组件的请求,因为传递的promise是异步对象,所以通过 async await 来定义actionscategoryList函数,commit提交修改请求,同时在 mutations 中定义commit传来的请求的具体修改,      通过mutations来修改state的数据

    问题:actions 中,通过API调用接口向服务器发请求时的 result 带有数据,但是commit出去的请求为空。

    解决:

      ② async categoryList( commit )

      改为:

      ③ async categoryList({ commit })

    使用async 传递 commit 为参数时,需要在commit外加 {}

 

posted @ 2022-09-05 11:20  Pray386  阅读(41)  评论(0)    收藏  举报