一、问题:TypeError: (0 , _message.default) is not a function
当没有default时,在其他页面import引入的时,必须加{}。
二、问题:Vue前端页面的表格数据总是一行一行的显示
使用Async/Await来解决前端数据一行一行显示的问题。可以将获取部门信息的操作放在一个Promise中,然后使用Promise.all()方法来等待所有Promise完成后再更新goodsList。这样就可以保证数据一次性显示出来。
async getList() {
getMessageInfo(this.queryParams).then(async (res) => {
this.goodsList = [];
for (let item of res.rows) {
let temp = {
id: item.id,
deptId: item.deptId,
name: item.name,
};
let response = await getDept(item.deptId);
temp.belong = response.data.deptName;
this.goodsList.push(temp);
}
});
}
三、问题:Vue前端组件之间数据传输问题
这个问题与第二个问题类似,是第一个组件没有访问完接口就传给第二个组件,使用Async/Await来解决
async qualityControl() {
await getCommonValue(data).then((res) => {
this.QCaverageVal = 0;
for (let item of res.rows) {
let temp = item.sendDate;
let temp2 = item.y1;
this.QCchartData.push(temp2);
this.QCtimeData.push(temp);
this.QCaverageVal += temp2;
}
this.QCaverageVal /= this.QCchartData.length;
this.QCtext =
"平均风速:" +
Number(this.QCaverageVal).toFixed(2) +
"(m/s)\t\t\t\t当前风速:" +
(this.QCchartData[this.QCchartData.length - 1]
? Number(
this.QCchartData[this.QCchartData.length - 1]
).toFixed(2)
: "暂无") +
"(m/s)\t\t\t\t数据损失率:" +
" " +
"%";
console.log(this.QCtext);
this.loading = false;
});
}
四、第一登录页面不显示,刷新一下才能正常显示
这个问题我没有找到原因,因此我给代码加入了一个登陆后自动刷新一次的机制。
mounted(){
if (location.href.indexOf("#reloaded") == -1) {
location.href = location.href + "#reloaded";
location.reload();
}
},