【问题标题】:problem for send data with axios on my array在我的阵列上使用 axios 发送数据的问题
【发布时间】:2020-02-06 14:21:36
【问题描述】:

我已在数组 (mySplitDays[splitDayIndex]=splitDay) 上通过 axios 发送我的数据,但我有一个错误...

components: { VueCal },
data() {
    return {
        users:[],
        mois:[],
        assignments:[],
        selectedEvent: {},
        showDialog: false,
        events: [],//recuperer tache ici
        minCellWidth: 400,
        minSplitWidth: 150,
        splitDays:mySplitDays        
    };
},
async mounted() {
    let response = await axios
    .get(`${process.env.***}/users?role=***&active=***`)
    let mySplitDays = response.data
    for (let splitDayIndex in mySplitDays){
        let splitDay= mySplitDays[splitDayIndex]
        splitDay.class = splitDay.lastname
        splitDay.label = splitDay.lastname
        mySplitDays[splitDayIndex]=splitDay
    }
}

[Vue 警告]:data() 中的错误:“ReferenceError: mySplitDays 未定义”

ReferenceError: mySplitDays 未定义

[Vue 警告]:渲染错误:“TypeError: Cannot read property 'length' of undefined”

TypeError:无法读取未定义的属性“长度” 在 Proxy.render (eval at ./node_modules/vue-loader/lib/template-compiler/index.js?{"id":"data-v-aae30ed8","hasScoped":true,"transformToRequire":{" video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{ }}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/Dashboard.vue (app.js:2705), :15:31)

【问题讨论】:

  • 回复的内容是什么?看起来 response.data 可能为空。尝试从 postman 调用 API 看看是否有效
  • 哪个答案?当我还在 axios 中时,我拥有所有数据
  • 尝试在axios调用后运行console.log(response.data)

标签: javascript arrays vue.js axios


【解决方案1】:

您正在尝试在创建组件时将 mySplitDays 分配给数据。在那一点上不存在称为那个的变量。您应该向 splitDays 添加一个默认值,例如一个空数组。空数组可能是最好的默认值,因为它有一个长度属性,因此如果你在模板的某个地方使用它,它不会引起问题。然后在mounted函数里面把axios的结果赋值给data。

【讨论】:

  • 好的,但是在 "splitDays:[]" 之后我应该把 mySplitDays = splitDays 放在哪里?
  • 您可以使用 this.splitDays = mySplitdays 为安装的 splitDays 赋值
猜你喜欢
  • 2023-03-31
  • 2019-04-06
  • 1970-01-01
  • 2023-03-16
  • 2021-10-10
  • 2020-12-13
  • 2020-04-03
  • 2018-12-24
  • 1970-01-01
相关资源
最近更新 更多