javascript 使用Axios的Vuex Action示例

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript 使用Axios的Vuex Action示例相关的知识,希望对你有一定的参考价值。

// In a Vuex store file
const baseUrl = "http://localhost:3500"
const productsUrl = `${baseUrl}/products`
const categoriesUrl = `${baseUrl}/categories`

Vue.use(Vuex)
 
export const store = new Vuex.Store({

  ...
  mutations: {
    setData(state, data) {
      state.products = data.pdata
      state.productsTotal = data.pdata.length
      state.categoriesData = data.cdata.sort()
    }
  },

  actions: {
    async getData(context) {
      let pdata = (await Axios.get(productsUrl)).data;
      let cdata = (await Axios.get(categoriesUrl)).data;
      context.commit("setData", { pdata, cdata} );
    }
  }
  
}

// Exampl Vue component (App.vue)
// We want the data right away, so use the created() hook
<script>
import { mapActions } from 'vuex'

export default {
  name: 'app',
  components: { Store },
  methods: {
    ...mapActions(["getData"])
  },
  created() {
    this.getData();
  }
}
</script>

以上是关于javascript 使用Axios的Vuex Action示例的主要内容,如果未能解决你的问题,请参考以下文章

Vuex以及axios的使用

Vuex以及axios

Vue之vuex和axios

vuex中使用axios请求,提示读取不了。get或post

vue+vuex+axios从后台获取数据存入vuex,组件之间共享数据

vuex以及axios