未捕获(承诺)TypeError:无法读取属性'数据'未定义的

时间:2018-03-17 14:14:48

标签: vue.js vuejs2

我有VueJS Laravel的这个问题

这是我的Home.vue

Image returnImage = System.Drawing.Image.FromStream(ms);

这是我的app.js

<template>
    <table>
        <tr v-for="models in model.data">
            {{models.nom}}
        </tr>
    </table>
</template>
<script>
import axios from 'axios'
export default{
    data() {
        return {
            model: {}
        }
    },
    created:function(){
        this.fetchDataResto()
    },
    methods: {
        fetchDataResto(){
            var vm = this
            axios.get('/test')
                .then(function response(){
                    Vue.set(vm.$data, 'model', response.model.data)
                })
        }
    }
}
</script>

执行require("./bootstrap"); window.Vue = require("vue"); Vue.component('home', require('./components/Home.vue')); var app = new Vue({ el: "#app" });

后,我发出此消息错误

我不知道数据未定义的原因

由于

2 个答案:

答案 0 :(得分:0)

fetchDataResto(){
            var vm = this
            axios.get('/test')
                .then(function (response){
                    Vue.set(vm.$data, 'model', response.model.data)
                })
        }

您忘记设置response变量。 ;)

答案 1 :(得分:0)

我用这个解决了

fetchDataResto(){
                var vm = this
                axios.get('/test')
                    .then(function (response){
                        Vue.set(vm.model, 'model', response.data)
                    })
            }