后端数据获取后前端显示为空的问题?
import MyPanel from "@/components/Shop/MyPanel";
import AppMore from "@/components/Shop/AppMore";
import Mylist from "@/components/Shop/Mylist";
export default {
name: "AppGoods",
components: {Mylist, AppMore, MyPanel},
data(){
return{
tableData:[],
allnewgoods:[],
newgoods: [],
}
},
methods:{
getNew(){
console.log(this.tableData)
this.allnewgoods = this.tableData.sort( function sortData(a, b){
return new Date(b.ctime).getTime() - new Date(a.ctime).getTime()
});
// console.log(this.allnewgoods)
this.newgoods=this.allnewgoods.slice(0,4)
},
loadGet() {
this.$axios.get(this.$httpUrl+'/goods/list').then(res=>res.data).then(res=>{
console.log(res)
if(res.code == 200){ // 后端封装数据获取成功
this.tableData=res.data // 数据赋值显示
console.log(this.tableData)
}else{
alert("获取数据失败")
}
})
}
},
created() {
this.getNew();
this.loadGet();
}
}
为什么可以获取后端数据,但是要绑定的时候就显示空值
绑定数据会显示但是也会报错
回复
1个回答

test
2024-06-18
1、你先执行的getNew,再执行的loadGet2、loadGet中的$axios.get是一个异步请求(如果不知道什么是异步,可以百度下)
你应该在this.tableData=res.data
给tableData赋值之后,再运行getNew
回复

适合作为回答的
- 经过验证的有效解决办法
- 自己的经验指引,对解决问题有帮助
- 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
- 询问内容细节或回复楼层
- 与题目无关的内容
- “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容