一、问题: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();}},