具体参考之前的博文:vueday02——使用naive-ui做一个ACM看榜-CSDN博客
具体代码在这里面
原因:在本地运行的时候,datatable里面使用列表渲染成字符串前端设置样式进行转换,但是在正式部署的时候,这个组件没有将其自动转换,造成前端页面死转,CPU拉满造成卡顿,任何调试信息都没有,后面一步一步做单元测试部署,将list手动转成str解析即可
原始data(模拟后端传过来的数值):
const datas = ref([
// 代表后端传来的数据
// 0
{problemA: ["*", "\n", "1", "/", "2"],problemB: ["*", "\n", "1", "/", "2"],problemC: ["+", "\n", "1", "/", "2"],problemD: [" ", "\n", "0", "/", "0"],problemE: ["-", "\n", "0", "/", "2"],problemF: ["*", "\n", "7", "/", "10"],problemG: ["*", "\n", "1", "/", "2"],problemH: ["+", "\n", "2", "/", "2"],problemI: ["-", "\n", "0", "/", "2"],
},
给n-data-table的数据
const data = ref([{key: 0,index: 1,name: "user Name1",solved: 3,// age: 32,college: "JiShou University",problemA: datas.value[0].problemA.join(""),problemB: datas.value[0].problemB.join(""),problemC: datas.value[0].problemC.join(""),problemD: datas.value[0].problemD.join(""),problemE: datas.value[0].problemE.join(""),problemF: datas.value[0].problemF.join(""),problemG: datas.value[0].problemG.join(""),problemH: datas.value[0].problemH.join(""),problemI: datas.value[0].problemI.join(""),},
颜色转换函数
const judgeColor = (data:any) => {let color = "";// console.log("打印传入data", data)if (data[0] === "+") {color = '#e1ffb5'} else if (data[0] === "*") {color = '#3db03d'} else if (data[0] === "-") {color = '#ffd0d0'}// console.log("返回颜色", color)return color;
}