后端向前端传数据,前端可以得到数据,但是无法将得到的数据赋值到menuList1和menuList2中怎么解决?
export default {
data() {
return {
// 左侧菜单数据
// 一级菜单
menuList1: [],
// 二级菜单
menuList2: [],
}
},
// 定义生命周期函数
created() {
this.getMeunList()
},
methods: {
logout() {
window.sessionStorage.clear()
this.$router.push('/login')
},
// 获得所有的左侧菜单
async getMeunList() {
const res = await this.$http.get(this.hd+'/selectList1')
const { data: res1 } = await this.$http.get(this.hd + '/selectList1')
const { data: res2 } = await this.$http.get(this.hd + '/selectList2')
console.log(res)
console.log(res1)
console.log(res2)
this.menuList1 = res1.list
console.log("一级菜单"+this.menuList1)
this.$set.menuList2 = res2.list
console.log("二级菜单"+this.menuList2)
},
},
}
看你打印的res1本身就是数组了,为什么还要用res1.list,去掉list试试???
res1没有list,你用res1.list肯定是undefined,直接用this.menuList1 = res1
this.menuList1 = res1
this.menuList2 = res2
就可以了哦
我也奇怪为什么要res1.list,直接res1就好啦
是不是因为异步的问题,你试一下 在success里面赋值
$http.get()..success(function(response, status, headers, config){
console.log(response.data);
})
不应该是this.menuList1 = res1吗? 为什么是this.menuList1 = res1.list