我不断收到此Vue错误:“ ReferenceError:未定义响应” ,但是当我在控制台中签到时,数据就在那里了。
我打算使用响应中的数据进行分页。预先感谢。
方法
getAllUserData(){
let $this=this;
axios.get('api/members/getAllMembersData').then(response=>this.members=response.data.data);
$this.makePagination(response.meta,response.links);
},
makePagination(meta,links){
let pagination={
current_page:meta.current_page,
last_page:meta.last_page,
next_page_url:links.next,
prev_page_url:links.prev
}
this.pagination = pagination;
}
答案 0 :(得分:0)
您的响应仍在axios get方法内部,因此必须在axios方法内部(在.then()内部)调用makePagination函数
getAllUserData(){
let $this=this;
axios.get('api/members/getAllMembersData').then(response=>
this.members=response.data.data
$this.makePagination(response.data.meta,response.data.links);
},
makePagination(meta,links){
let pagination={
current_page:meta.current_page,
last_page:meta.last_page,
next_page_url:links.next,
prev_page_url:links.prev
}
this.pagination = pagination;
}
答案 1 :(得分:0)
axios.get()
是一个异步功能。在ajax请求完成之后,将不会执行此函数之后的代码,但会在此之前执行很长时间。因此,变量response
尚不存在。
ajax调用完成后必须执行的所有代码都必须放在调用的.then()
函数中。
getAllUserData(){
axios.get('api/members/getAllMembersData').then(response => {
this.members = response.data.data;
this.makePagination(response.data.meta, response.data.links);
});
},