vue+element-ui在表格中计算两数差值并让差值>20的字体显示为红色

复制代码
          <el-table-column
            prop="differential" 
            label="差量" 
            class-name="small-padding fixed-width">
            <template slot-scope="scope">
              <span :class="{ 'red-text': isDiffGreaterThan20(scope.row.sourceNum, scope.row.targetNum) }">
                {{ calculateDiff(scope.row.sourceNum, scope.row.targetNum) }}
              </span>
            </template>
          </el-table-column>
复制代码
复制代码
    // 判断差值是否大于20
    isDiffGreaterThan20(sourceNum, targetNum) {
      if (this.isNumeric(sourceNum) && this.isNumeric(targetNum)) {
        return Math.abs(sourceNum - targetNum) > 20;
      }
      return false;
    },
    // 判断是否为数值类型
    isNumeric(value) {
      return !isNaN(parseFloat(value)) && isFinite(value);
    },
    // 计算差值
    calculateDiff(sourceNum, targetNum) {
      if (this.isNumeric(sourceNum) && this.isNumeric(targetNum)) {
        return Math.abs(sourceNum - targetNum);
      }
      return '';
    }
复制代码
.red-text {
  color: red;
}

注意sourceNum和targetNum为数值类型,即

复制代码
// 表格内容
      tableData: [{
        verifyTime: "2023-11-11",
        sourceDatabaseName: "swop",
        sourceTableName: "xxxx",
        sourceNum: 1000,
        targetDatabaseName: "risk",
        targetTableName: "xxxx",
        targetNum: 800,
      },{
        verifyTime: "2023-12-11",
        sourceDatabaseName: "swop",
        sourceTableName: "xxxx",
        sourceNum: 100,
        targetDatabaseName: "risk",
        targetTableName: "xxxx",
        targetNum: 110,
      },]
复制代码

 

posted @   .Tik  阅读(72)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
· 使用C#创建一个MCP客户端
点击右上角即可分享
微信分享提示