对比两个el-table,差异数据突显标记

基于ESP32的智能车载环境监测系统开发 随着智能汽车技术的飞速发展,车载系统的功能越来越多样化,除了基本的行驶控制和娱乐功能外,车载环境监测系统也成为了一项重要的功能。通过实时监测车内环境数据,例如温度、湿度、空气质量、气体浓度等,智能车载环境监测系统能够提供更为舒适和安全的驾驶体验,同时增强车辆的智能化程度,提升用户的整体体验。ESP32作为一种集成了Wi-Fi和蓝牙功能的高效能低功耗嵌入式开发平台,成为了设计车载环境监测系统的理想选择。它不仅具备丰富的接口和处理能力,还能够实现与云平台、手机应用等系统的远程数据传输和控制。 阅读详情
AI摘要

本文聚焦数据分析中对比两个数据集的需求,介绍使用el-table组件实现该功能的方法。利用组件的cell-style属性自定义单元格样式,突显差异数据。还给出了核心代码逻辑,通过判断数据是否相等设置单元格文字颜色,最后展示了完整功能代码及实现效果。

前言

在数据分析和数据处理的过程中,经常需要对比两个数据集,以便发现其中的差异和变化。本文将介绍如何使用 el-table 组件来对比两个数据集,并通过差异数据的突显标记,帮助用户更直观地理解数据的变化。


cell-style 属性

其实利用 el-table 组件中的 cell-style 属性处理这个功能非常简单,它允许开发者通过提供对象或返回样式的函数来自定义每个单元格的样式,通过这个特性我们就可以很轻松的实现这个功能。

<el-table :data="productList.tableOne" :cell-style="getCellStyle('数据1', '数据2')"></el-table>

在这里插入图片描述

核心代码

getCellStyle(currentData, compareToData) {
  return ({ rowIndex, column }) => {
    const { property } = column;
    const currentValue = currentData[rowIndex]?.[property];
    const compareToValue = compareToData[rowIndex]?.[property];
    return currentValue !== compareToValue ? { color: "red" } : null;
  };
},
  • 首先,在 getCellStyle 函数中会接受两个参数 currentData 和 compareToData。这个函数会返回一个回调函数,用于设置表格单元格的样式;
  • 回调函数接受一个参数 { rowIndex, column },其中 rowIndex 是当前行的索引,column 是当前列的信息。函数内部通过 column 获取到属性名 property;
  • 然后,函数通过索引 rowIndex 和属性名 property 从 currentData 和 compareToData 中获取对应的值 currentValue 和 compareToValue;
  • 最后,函数判断 currentValue 和 compareToValue 是否相等,如果不相等,则返回一个样式对象 { color: "red" },表示将单元格的文字颜色设置为红色;如果相等,则返回 null,表示不设置样式。

实现效果

在这里插入图片描述


完整功能代码

index.vue

<template>
  <div>
    <el-button type="success" @click="version">版本对比</el-button>
    <div>
      <select-dialog
        :dialogChild.sync="selectDialog.dialogLsattr"
        :dialogRow="selectDialog.dialogRow"
      />
    </div>
  </div>
</template>
<script>
import selectDialog from "./components/selectDialog";
export default {
  components: {
    "select-dialog": selectDialog,
  },
  data() {
    return {
      selectDialog: {
        dialogRow: {},
        dialogLsattr: false,
      },
    };
  },
  methods: {
    version() {
      this.selectDialog.dialogLsattr = true;
    },
  },
};
</script>

components/selectDialog.vue

<template>
  <el-dialog
    title="版本选择"
    width="40%"
    :close-on-click-modal="false"
    :visible.sync="dialogVisible"
    @close="close"
  >
    <div class="selectCon">
      <div class="transfer">
        <div class="nav">
          <div class="title">
            <span>版本列表</span>
            <span>{{ count }}/{{ list.length }}</span>
          </div>
          <div class="search">
            <el-input
              v-model="searchVal"
              clearable
              prefix-icon="el-icon-search"
              placeholder="版本号"
              @input="searchVersions"
            ></el-input>
          </div>
        </div>
        <div class="checkboxs">
          <div
            v-for="(item, index) in searchVal ? searchResult : list"
            :key="index"
            @click="toggleCheckbox(item)"
          >
            <el-checkbox
              v-model="checked[item]"
              :disabled="count >= 2 && !checked[item]"
              @change="toggleCheckbox(item)"
              >{{ item }}</el-checkbox
            >
          </div>
          <el-empty
            v-if="!list.length || (searchVal && !searchResult.length)"
            description="暂无数据"
          ></el-empty>
        </div>
      </div>
      <div class="subBtn">
        <el-button type="primary" :disabled="count < 2" @click="submit"
          >对比</el-button
        >
        <el-button
          style="margin-left: 10px"
          @click="$emit('update:dialogChild', false)"
          >取消</el-button
        >
      </div>
    </div>
    <div>
      <details-drawer
        :drawerChild.sync="detailsDrawer.drawerLsattr"
        :drawerRow="detailsDrawer.drawerRow"
      />
    </div>
  </el-dialog>
</template>
<script>
import detailsDrawer from "./detailsDrawer";
export default {
  components: {
    "details-drawer": detailsDrawer,
  },
  props: {
    dialogChild: {
      type: Boolean,
      default: function () {
        return false;
      },
    },
    dialogRow: {
      type: Object,
      default: function () {
        return {};
      },
    },
  },
  data() {
    return {
      searchVal: "", //搜索值
      checked: {}, //选中的checkbox
      list: [
        "version1",
        "version2",
        "version3",
        "version4",
        "version5",
        "version6",
        "version7",
        "version8",
        "version9",
        "version10",
        "version11",
        "version12",
        "version13",
        "version14",
        "version15",
        "version16",
      ], //模拟全部数据列表
      searchResult: [], // 搜索结果列表
      dialogVisible: false, //弹框状态
      detailsDrawer: {
        //抽屉传递数据
        drawerRow: {},
        drawerLsattr: false,
      },
    };
  },
  computed: {
    // 动态计算当前选中的checkbox数量
    count: function () {
      return Object.values(this.checked).filter(Boolean).length;
    },
  },
  watch: {
    dialogChild: {
      handler(newName, oldName) {
        this.dialogVisible = newName;
        this.list.forEach((item) => {
          this.$set(this.checked, item, false);
        });
      },
      deep: true,
    },
    dialogRow: {
      handler(newName, oldName) {},
      deep: true,
    },
  },
  methods: {
    // 当前行切换复选框的选中状态
    toggleCheckbox(item) {
      if (!(this.count >= 2 && !this.checked[item])) {
        this.checked[item] = !this.checked[item];
      }
    },
    // 搜索
    searchVersions() {
      const keyword = this.searchVal.trim(); // 获取输入框的值并去除首尾空格
      if (keyword === "") {
        this.searchResult = [];
        return;
      }
      this.searchResult = this.list.filter((item) => item.includes(keyword));
      console.log("搜索结果:", this.searchResult);
    },
    // 对比
    submit() {
      console.log(this.checked);
      this.detailsDrawer.drawerLsattr = true;
    },
    // 关闭弹框
    close() {
      this.$emit("update:dialogChild", false);
      this.checked = {};
      this.searchVal = "";
      this.searchResult = [];
    },
  },
};
</script>
<style lang="less" scoped>
.selectCon {
  background-color: #fff;
  padding: 16px;
  .transfer {
    width: 100%;
    height: 50vh;
    overflow-y: auto;
    border-radius: 6px;
    border: 1px solid #ebeef5;
    .nav {
      position: sticky;
      top: 0;
      z-index: 10;
      background: #fff;
      .title {
        background: #f5f7fa;
        padding: 10px 16px;
        display: flex;
        justify-content: space-between;
        span:nth-child(1) {
          font-weight: bold;
        }
        span:last-child {
          color: #909399;
        }
      }
      .search {
        padding: 10px 16px 0 16px;
        .el-input {
          width: 100%;
        }
      }
    }
    .checkboxs {
      padding: 10px 16px;
      div:hover {
        cursor: pointer;
        background: #f5f7fa;
      }
      .el-checkbox {
        margin: 3px 6px;
      }
      .el-checkbox:hover {
        color: #296bff;
      }
    }
  }
  .subBtn {
    margin-top: 16px;
    display: flex;
    justify-content: right;
  }
}
</style>

components/detailsDrawer.vue

<template>
  <el-drawer
    :append-to-body="true"
    :close-on-click-modal="false"
    :visible.sync="drawerVisible"
    direction="rtl"
    size="100%"
    title="版本对比"
    @close="$emit('update:drawerChild', false)"
  >
    <div class="versionsCon">
      <h4>标题1</h4>
      <el-card class="box-card">
        <div class="itemContrast">
          <el-table :data="productList.tableOne" :cell-style="getCellStyle(productList.tableOne, productList.tableTwo)" border>
            <el-table-column prop="aaa" label="名称1"></el-table-column>
            <el-table-column prop="bbb" label="名称2"> </el-table-column>
            <el-table-column prop="ccc" label="名称3"></el-table-column>
          </el-table>
          <el-table :data="productList.tableTwo" :cell-style="getCellStyle(productList.tableOne, productList.tableTwo)" border>
            <el-table-column prop="aaa" label="名称1"></el-table-column>
            <el-table-column prop="bbb" label="名称2"> </el-table-column>
            <el-table-column prop="ccc" label="名称3"></el-table-column>
          </el-table>
        </div>
      </el-card>
      <h4>标题2</h4>
      <el-card class="box-card">
        <div class="itemContrast">
          <el-table :data="inventoryList.tableOne" :cell-style="getCellStyle(inventoryList.tableOne, inventoryList.tableTwo)" border>
            <el-table-column prop="aaa" label="名称1"></el-table-column>
            <el-table-column prop="bbb" label="名称2"> </el-table-column>
            <el-table-column prop="ccc" label="名称3"></el-table-column>
            <el-table-column prop="ddd" label="名称4"></el-table-column>
          </el-table>
          <el-table :data="inventoryList.tableTwo" :cell-style="getCellStyle(inventoryList.tableOne, inventoryList.tableTwo)" border>
            <el-table-column prop="aaa" label="名称1"></el-table-column>
            <el-table-column prop="bbb" label="名称2"> </el-table-column>
            <el-table-column prop="ccc" label="名称3"></el-table-column>
            <el-table-column prop="ddd" label="名称4"></el-table-column>
          </el-table>
        </div>
      </el-card>
    </div>
  </el-drawer>
</template>
<script>
export default {
  props: {
    drawerChild: {
      type: Boolean,
      default: function () {
        return false;
      },
    },
    drawerRow: {
      type: Object,
      default: function () {
        return {};
      },
    },
  },
  data() {
    return {
      drawerVisible: false, //抽屉状态
      productList: {
        tableOne: [
          {
            aaa: "2024",
            bbb: "描述",
            ccc: "abc",
          },
          {
            aaa: "2024",
            bbb: "描述",
            ccc: "abcd",
          },
        ],
        tableTwo: [
          {
            aaa: "2024",
            bbb: "描述xx",
            ccc: "abc",
          },
          {
            aaa: "2025",
            bbb: "描述",
            ccc: "abc",
          },
        ],
      },
      inventoryList: {
        tableOne: [
          {
            aaa: "2024",
            bbb: "描述",
            ccc: "abc",
            ddd: "",
          },
          {
            aaa: "2024",
            bbb: "描述",
            ccc: "abc",
            ddd: "^%$",
          },
        ],
        tableTwo: [
          {
            aaa: "2024",
            bbb: "描述",
            ccc: "abc",
            ddd: "*/-",
          },
        ],
      },
    };
  },
  watch: {
    drawerChild: {
      handler(newName, oldName) {
        this.drawerVisible = newName;
      },
      deep: true,
    },
    drawerRow: {
      handler(newName, oldName) {},
      deep: true,
    },
  },
  methods: {
    // 比较数据并返回颜色
    getCellStyle(currentData, compareToData) {
      return ({ rowIndex, column }) => {
        const { property } = column;
        const currentValue = currentData[rowIndex]?.[property];
        const compareToValue = compareToData[rowIndex]?.[property];
        return currentValue !== compareToValue ? { color: "red" } : null;
      };
    },
  },
};
</script>
<style lang="less" scoped>
.versionsCon {
  padding: 0px 36px;
  .itemContrast {
    display: flex;
    justify-content: space-between;
    .el-table:first-child {
      margin-right: 16px;
    }
  }
  .el-card {
    margin: 16px 0;
  }
}
::v-deep {
  .el-drawer__header > :first-child {
    font-size: 18px;
    font-weight: bold;
    color: #303133;
    display: flex;
    justify-content: center;
  }
  .el-drawer__header {
    margin-bottom: 16px;
  }
}
</style>

实现效果

在这里插入图片描述


相关推荐

⭐ 微信小程序开发实战:利用差异对比显示对象属性变化
⭐ element中el-table根据状态改变样式,你不能错过的技能

【科研数据获取】根据Excel表个中的企业/公司信息批量获取经纬度坐标,并进行地图可视化 批量获取企业/公司的经纬度坐标,并进行地图可视化1 需求2 实现途径3 需求逐步实现 1 需求 在做项目的时候,老板或者项目答辩时候甲方最喜欢看到的就是可视化结果,尤其是涉及到地图可视化。很多时候会遇到企业/公司的数据,想要做地图可视化,必不可少的就是要获取它们具体地址:第一种就是像查户口一样精准一下具体的城镇街道,还有一种就是经纬度信息,前一种属于文字内容往往用于管理方面,第二种数字信息多用于数据处理与分析。 2 实现途径 获取地理信息数据,自然需要使用到地图的功能,这里直接采用百度地图的拾取坐标系统, 阅读详情

相关推荐

从零构建FOC:手把手教你实现无刷电机磁场定向控制

本文是一份详尽的FOC(磁场定向控制)实战教程,指导开发者从零开始构建无刷电机驱动系统。文章深入解析了FOC的核心算法,包括坐标变换(Clarke/Park)、SVPWM调制和双环PI控制,并对比了有感与无感方案的实现差异。通过分步调试指南,帮助读者亲手实现稳定、高效的无刷电机控制,彻底掌握其底层原理。

h3i4j的博客 514

Element-UI的el-table表格使用cell-style根据表格不同数据显示不同颜色

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 欢迎使用Markdown编辑器 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar

weixin_44960796的博客 6637

HDRP shader 获取阴影(Custom Pass)

Unity:2021.3.0f1 HDRP:12.1.6

LanQ的博客 2097

element table cell-style设置

element table cell-style设置

凡尘 2816

Cocos Creator实战:5步搞定棋牌游戏大厅场景开发(附完整代码)

本文详细介绍了使用Cocos Creator 3.8开发棋牌游戏大厅的5个关键步骤,包括工程配置、动态UI系统实现、核心交互功能开发、性能优化及调试发布技巧。通过模块化代码和实战案例,帮助开发者快速构建高交互性的棋牌游戏大厅,提升用户留存率。

weixin_29002209的博客 353

Understand-Anything:AI驱动的代码知识图谱,实现项目全局洞察与高效导航

在软件开发中,理解复杂代码库的结构和依赖关系是提升开发效率的关键。传统代码阅读方式往往陷入局部视角,难以快速把握系统全貌。知识图谱技术通过将代码实体(如文件、类、函数)及其关系(调用、继承、依赖)可视化,为代码理解提供了全局视角。这项技术的核心价值在于将静态代码转化为动态、可交互的认知地图,极大降低了系统学习与维护成本。在实际工程中,它广泛应用于新成员快速入职、遗留系统梳理、架构影响分析等场景。本文介绍的Understand-Anything工具,正是基于这一理念,通过多智能体分析管道,自动构建代码的结构图

weixin_42615290的博客 880

ElementUI的el-table表格使用cell-style根据表格不同数据显示不同颜色

针对表格不同数据修改样式

Sanqianll的博客 5327

无限维李代数局部与2-局部1/2-导子:从概念到Witt代数实例解析

在抽象代数与数学物理中,李代数是描述对称性的基本结构,而导子则是刻画其微分性质的核心算子。从经典的导子概念出发,通过引入“局部”与“分数阶”两个关键推广,形成了局部导子、2-局部导子以及1/2-导子等重要研究方向。这些推广不仅深化了对无限维李代数(如Witt代数、Virasoro代数)复杂结构的理解,其研究方法和结论也为共形场论、可积系统等物理理论提供了数学基础。本文聚焦于无限维李代数上局部与2-局部1/2-导子的系统研究,通过拆解核心概念、剖析典型代数结构,并以Witt代数为实例,详细演示了从全局1/2-

weixin_34072296的博客 389

Vue中el-table修改单独列的字体颜色、样式,用cell-style写函数

【代码】Vue中el-table修改单独列的字体颜色、样式,用cell-style写函数。

z707960209的博客 6267

不刷机!Jetson AGX Orin无损更新内核与设备树的两种安全方法(附备份恢复脚本)

本文详细介绍了Jetson AGX Orin在不刷机的情况下安全更新内核与设备树的两种方法,包括extlinux.conf动态加载和分区精准刷新方案。通过备份恢复脚本和工业级灾备方案,确保零数据丢失,适用于边缘AI和机器人等关键场景。

weixin_40192258的博客 306

资产监测设备中130dBm的GPS信号注入天线端口,C/N0一般是多少?

笔者的团队一直从事于资产监测设备的开发,在开发过程中,涉及到很多细节的问题,针对新入职的同事来说较为陌生。同时,在团队外,还有需要对智能硬件终端开发感兴趣的用户。基于此背景下,笔者将在下面的内容主要介绍资产监测设备以及对设备中的GPS相关的问题:130dBm的GPS信号注入天线端口,C/N0一般是多少?作出详细的解答。 资产监测设备概述: 资产监测设备是基于物联网通信技术基础上的智能硬件终端,其主要作用是帮助用户监测资产在仓库、运输途中、交付整个流通环节中,提供资产的实时位置与状态参数。用户只需要登录资产

瑞奇聊通信模组 1229

element 表格el-table的 :cell-style用法-表格固定行文字高亮

el-table的 :cell-style用法。实现表格固定行文字高亮效果。

qq_41910413的博客 1346

VTK基础教程(1)- vtkPolyData 介绍

目录 VTK的编译与环境搭建 VTK一般渲染流程 VTK数据类型-vtkPolyData 使用vtk自带的多边形数据 使用自己创建的数据 添加顶点颜色 添加面颜色 VTK的编译与环境搭建 这部分目前已经有了大佬做了成熟的傻瓜式配置,大家可以参考这篇文章:VTK+VS2019(或其他版本均可) 傻瓜式一站式 配置_Nancy_fairy的博客-优快云博客_vs2019 vtk VTK一般渲染流程 这部分的介绍也很多,大家可以参考这篇文章:VTK笔记-了解VTK_黑山老妖的博客.

qq_35769071的博客 9051

element中el-table根据状态改变样式,你不能错过的技能

element中el-table根据状态改变样式,你不能错过的技能

希望看完文章的你能够带着答案离开。 4752

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

elementui el-table cell-style 给指定的列加属性

根据用户的状态(数字)转成英文。

weixin_47906106的博客 4148

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

el-table添加行/单元格样式

row-style/cell-style,行/单元格的 style 的回调方法,也可以使用一个固定的 Object 为所有行/单元格设置一样的 Style;row-class-name/cell-class-name,行/单元格的 className 的回调方法,也可以使用字符串为所有行/单元格设置一个固定的 className

nanjo_yoshino0712的博客 1万+

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

ElementUI el-table 自定义cell-style

下面代码功能主要判断第五列以及第六列的颜色,tb为同比数值,hb为环比数值,最终赋予对应的样式。 cellStyle(row, column, rowIndex, columnIndex) { //正常情况 var style = { 'border-color': '#BECDDC', color: 'black', .

授人以渔的博客 6064

(element-ui)el-table表格使用cell-style改变单元格样式

直接绑定在el-table标签上 :cell-style="changeCellStyle" 在methods方法里定义 // 表体字体颜色设置 /*** * row为某一行的除操作外的全部数据 * column为某一列的属性 * rowIndex为某一行(从0开始数起) * columnIndex为某一列(从0开始数起) */ cellStyle({ row, column, rowIndex, columnIndex }) { if (row.yoy..

weixin_51063441的博客 5400

el-table组件自定义设置单元格样式

在methods方法里定义。

林中明月间丶 5423

element中,在el-table中通过使用cell-style修改某一列的样式

【代码】element中,在el-table中通过使用cell-style修改某一列的样式。

m0_71144252的博客 1528

el-table单个单元格变色(cellStyle)

关于使用cellStyle改变单个单元格样式的两种方法(踩坑)

qq_51048647的博客 8978

对el-table表格的表头操作

看,基本上一样的用法:colspan='number' 属性,设置单元格可以横跨几列(默认一个单元格横向只占据一列) 图示3: 图示4: 代码: 效果2:el-table多级表头合并 图示1: html部分需要el-table-column标签进行嵌套 js部分: 图示2: html部分 js部分: 还可以,直接通过column.label找到对应单元格,然后进行合并单元格操作,不使用rowIndex和columnIndex了 这种方式,在某些情况下,会更加方便

m0_63026408的博客 5253

element UI表格使用cell-style改变单元格样式

【例子1】 // 调用方法的部分为: <el-table :cell-style="timeStyle" > // 要修改样式的部分为: <el-table-column label="创建时间" :formatter="startTime" width="150"> // 方法: methods: // 改变表格中时间的字体样式:调小 timeStyle(column) { if(column.columnIndex === 2 || column.colum.

诚的博客 4万+

关于el-table表格中的指定单元格设置指定颜色

关于el-table表格中的指定单元格设置指定颜色

m0_59061155的博客 3811

Element Plus el-table的样式调整详解

前言:网上查如何调整el-table表格内部样式,一大堆资料说直接用css调整原生样式,来回捣鼓半天还是不满意,而且版不同样式引用还不一定有效果,最后看官方文端摸索了一下调整方法。 效果图: 我们发现底部还有白线,通过网页控制台选中查看,发现还是有内部样式捣乱。 此时果断用deep深度选择器对其进行修改,这里我使用的是scss,不同的语言,deep深度选择器的使用可能有差别。 修改后的样式: 后续:其实这个表格还是有不完美的地方左右两边的线无法清除掉。更奇怪的是,白色背景下,左右

qq_39088036的博客 1万+

Vue里使用Element-ui组件el-table设置指定行样式(采用cell-style方案避row-class-name坑)

Vue里使用Element-ui组件el-table设置指定行样式(采用cell-style方案避row-class-name坑) 问题描述:根据项目开发需求,需要对table指定的行或者列进行样式设置。Element-ui中table提供的row-class-name提供的方案是真的坑,改用cell-style方案。先给出效果图:即实现自定义斑马条纹样式。 其他方法参考Element-ui官方文档:Element-ui文档 1、el-table绑定cell-style方法: <el-table

qq_41497443的博客 1万+
上一篇: 前端 PDF 预览技巧:标签 vs 插件,如何优雅地展示 PDF 文件
下一篇: el-dialog中调用resetFields()方法重置表单报错
水星记_
水星记_ 优质创作者: 编程框架技术领域 优质创作者: 编程框架技术领域
博客等级 码龄6年 13万+粉丝 212原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

水星记_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值