首页 > 异步加载的时候返回data获取不到

异步加载的时候返回data获取不到

el: '#app',
    ready: function() {
        this.$http.post('/js/m/package.json', function(json) {
           // Vue.http.options.emulateJSON = true;
            alert(json);
            alert(json.name);
            this.$set('books', json);
            this.$data.books=json;
        }).error(function(data, status, request) {
            console.log('fail' + status + "," + request);
        });
    }, data: {
        book:{
            id: 0,
            author: '',
            name: '',
            price: ''
        },books: ''
    },
 返回的数据始终不是json格式数据,我弹出的alert为【object,object】对象,json.name值为vue 
我引入/js/m/vue-resource.min和js/m/vue.js

json数据[{"id":1,"author":"曹雪芹","name":"红楼梦","price":32},{"id":2,"author":"施耐庵","name":"水浒传","price":30},{"id":"3","author":"罗贯中","name":"三国演义","price":24},{"id":4,"author":"吴承恩","name":"西游记","price":20}]

求问下 这是怎么回事。本人刚接触vue.js。。。


vue-resource把ajax返回的内容做了包装,你直接把返回的对象打出来看看就知道怎么拿值了:

this.$http.post('/js/m/package.json', function(response) {
           console.log(response);
});

你的数据在response.data下面

具体response结构参考:https://github.com/vuejs/vue-resource/bl...

【热门文章】
【热门文章】