为什么我得到这是未定义的,当试图保存数据到存储变量使用axios获取方法?

svujldwt  于 2023-06-22  发布在  iOS
关注(0)|答案(1)|浏览(145)

有人能告诉我为什么我得到这个错误,或者指出我这样的情况下工作的例子?我一直在下面的例子在Pinia文档。

使用:

  • “pinia”:“^2.1.3”
  • “vue”:“^3.2.25”,
  • “vue-router”:“^4.0.16”
  • “axios”:“^1.4.0”,
  • “vite”:“^2.9.5”

TheItems.vue:

<template>
    <div>
    Items:
    {{storeItems.items}}
    </div>
</template> 

<script setup>
    /*
    imports
    */
    import { useItemsStore } from '../stores/itemsStore';

    /*
    Store
    */
    const storeItems = useItemsStore();

    /*
    Hooks
    */

    storeItems.getItemsList_API();

</script>

ItemsStore.js

import { defineStore } from 'pinia'
import axios from 'axios';

export const useItemsStore = defineStore('itemsStore', {
    
    state: () => ({
            items: [],
    }),
    actions: {
        async getItemsList_API() {
                await axios.get('http://127.0.0.1:5000/api/items')
                .then(function (response) {
                    response.data.items.forEach(element => {
                        this.items.push(element);
                    });
                    console.log(response.data.items);
                });
              
        },
    },
  });
ufj5ltwl

ufj5ltwl1#

我在这里找到了一个答案,然后发布了这个问题:Vue.js - axios is undefined when trying to store and display vue-axios response data我必须在axios调用的.then链中使用胖箭头。

相关问题