vxe-table 自定义插槽模板实现单元格内容溢出交互优化

Vxe UI vue vxe-table vxe-text-ellipsis 如何实现单元格多行文本超出、多行文本溢出省略 vue如何实现单元格多行文本超出、多行文本溢出省略。 阅读详情

1. 从“显示省略号”到“优雅交互”:为什么我们需要自定义溢出提示?

做后台管理系统或者数据中台的前端同学,肯定对表格组件又爱又恨。爱的是它能清晰展示数据,恨的是当数据内容过长时,那个默认的、千篇一律的“...”省略号,实在是有点“简陋”和“不友好”。我接手过不少项目,产品经理和业务方最常提的一个需求就是:“这个单元格里的文字太长了,鼠标放上去能不能看到完整内容?最好还能加点别的信息,比如状态说明或者操作按钮。”

vxe-table 作为一款功能强大的 Vue 表格组件,其实早就考虑到了这个问题。它提供了 show-overflow、show-header-overflow 和 show-footer-overflow 这三个属性。你只要设置为 true,当内容超出单元格宽度时,vxe-table 就会自动帮你处理成省略号,并且鼠标悬停时,会用一个默认的 Tooltip 气泡框显示完整内容。这听起来很方便,对吧?我一开始也是这么觉得的,直接配置上就完事了。

但实际用起来,很快就遇到了瓶颈。这个默认的 Tooltip,它就是个纯文本展示框,白底黑字,样式固定。如果你的内容里包含超链接怎么办?如果我想在提示框里展示多行文本、带格式的说明,甚至放一个迷你按钮让用户直接操作呢?默认的 Tooltip 就完全无能为力了。更别提有时候产品想要和整体 UI 设计语言统一的、带品牌色的提示框样式。这时候,我们就得请出 vxe-table 的“大杀器”——自定义插槽模板。

简单来说,自定义插槽模板就是把 Tooltip 内容的控制权完全交还给你。你可以像写普通的 Vue 组件模板一样,去定义当鼠标悬停在表头、单元格或表尾时,那个弹出框里到底要显示什么、长什么样。这不仅仅是“显示完整文本”,而是开启了一个全新的交互可能性。你可以嵌入链接、按钮、图标、进度条,甚至是复杂的表单控件。接下来,我就带你一步步深入,看看如何用 header-tooltip、tooltip 和 footer-tooltip 这三个插槽,把简单的“溢出提示”变成提升用户体验的“交互增强点”。

2. 基础入门:快速上手三个核心自定义提示插槽

在开始写复杂代码之前,我们得先把地基打牢。vxe-table 为溢出提示提供了三个非常直观的插槽,分别对应表格的三个部分:

  • #header-tooltip:用于自定义表头单元格内容溢出时的提示。
  • #tooltip:用于自定义正文单元格内容溢出时的提示(最常用)。
  • #footer-tooltip:用于自定义表尾单元格内容溢出时的提示。

要使用它们,有一个关键前提:你必须先启用对应的溢出省略功能。也就是说,你需要把 showOverflow、showHeaderOverflow 或 showFooterOverflow 至少一个设置为 true。自定义插槽是在这个机制被触发后,用来替换默认提示内容的。

让我们来看一个最基础的例子,实现一个简单的红色表头提示和橙色单元格提示:

<template>
  <div>
    <vxe-grid v-bind="gridOptions">
      <!-- 自定义表头提示插槽 -->
      <template #header-tooltip="{ column }">
        <span style="color: red; font-weight: bold;">表头信息:{{ column.title }}</span>
      </template>

      <!-- 自定义单元格提示插槽 -->
      <template #tooltip="{ row, column }">
        <div style="color: orange; padding: 4px;">
          完整内容:{{ row[column.field] }}
        </div>
      </template>

      <!-- 自定义表尾提示插槽 -->
      <template #footer-tooltip="{ row, column }">
        <span style="color: green;">汇总项:{{ row[column.field] }}</span>
      </template>
    </vxe-grid>
  </div>
</template>

<script setup>
import { reactive } from 'vue'

const gridOptions = reactive({
  // 1. 启用溢出省略功能(必须)
  showOverflow: true,
  showHeaderOverflow: true,
  showFooterOverflow: true,
  showFooter: true, // 如果需要表尾,记得开启

  columns: [
    { field: 'seq', type: 'seq', width: 70 },
    { field: 'name', title: '姓名(这是一个非常长的表头标题)', width: 120 },
    { field: 'role', title: '角色' },
    { field: 'address', title: '详细地址', width: 150 }
  ],
  data: [
    { name: '张三', role: '前端工程师', address: '北京市海淀区中关村软件园一期非常长的地址信息用于测试溢出效果' },
    { name: '李四', role: '后端开发', address: '上海市浦东新区张江高科技园区' }
  ],
  footerData: [
    { seq: '合计', name: '总计人数:2人', role: '-', address: '地址信息汇总展示' }
  ]
})
</script>

代码解读与注意事项:

  1. 插槽作用域参数:这是理解自定义插槽的关键。#header-tooltip="{ column }" 中的 column 就是当前表头列的所有配置信息,你可以拿到 title、field 等。#tooltip="{ row, column }" 中的 row 是当前行的数据对象,column 是当前列的配置,通过 row[column.field] 就能拿到这个单元格的原始数据。#footer-tooltip 同理。
  2. 样式直接内联:上面的例子用了 style 内联样式来快速修改颜色和字体,这在小范围定制时很方便。但对于项目级统一风格,更推荐使用 CSS 类名,通过 :class 绑定,这样更容易维护。
  3. 启用表尾:如果你想使用 #footer-tooltip,务必在 gridOptions 中设置 showFooter: true,并且提供 footerData 数据,否则表尾不会显示,插槽自然也不会生效。

我刚开始用的时候,犯过一个低级错误:只写了自定义插槽模板,但忘了把 showOverflow 设为 true,结果鼠标放上去什么反应都没有,排查了半天。所以记住,自定义插槽是“替换”行为,前提是默认的溢出提示机制要先被激活。

3. 进阶实战:打造高交互性与复杂样式的提示框

基础用法只能算“热身”,自定义插槽真正的威力在于它能承载任何你想要的 Vue 模板内容。下面我们来看几个在实际项目中非常实用的进阶案例。

3.1 嵌入可操作元素:链接与按钮

想象一个场景,表格的“订单号”列因为宽度限制只显示了部分,鼠标悬停时,我们不仅想展示完整订单号,还希望用户能一键复制,或者点击直接跳转到订单详情页。

<template #tooltip="{ row, column }">
  <div class="custom-tooltip">
    <div class="tooltip-title">完整信息</div>
    <div class="tooltip-content">{{ row[column.field] }}</div>
    <div class="tooltip-actions">
      <vxe-link
        status="primary"
        icon="vxe-icon-copy"
        @click="handleCopy(row[column.field])"
      >
        复制
      </vxe-link>
      <vxe-link
        status="success"
        icon="vxe-icon-eye"
        :href="`/order/detail/${row.id}`"
        target="_blank"
        style="margin-left: 8px;"
      >
        查看详情
      </vxe-link>
    </div>
  </div>
</template>

<script setup>
// 在 script 部分定义方法
const handleCopy = (text) => {
  navigator.clipboard.writeText(text).then(() => {
    // 这里可以引入一个消息提示组件,如 ElMessage
    console.log('复制成功:', text);
  });
};
</script>

<style scoped>
.custom-tooltip {
  padding: 8px;
  max-width: 300px; /* 控制提示框最大宽度 */
}
.tooltip-title {
  font-weight: bold;
  margin-bottom: 4px;
  color: #409eff;
}
.tooltip-content {
  margin-bottom: 8px;
  word-break: break-all; /* 长文本自动换行 */
}
.tooltip-actions {
  display: flex;
  justify-content: flex-end;
  border-top: 1px solid #eee;
  padding-top: 8px;
}
</style>

这个例子中,我们在提示框里加入了两个 vxe-link 组件(按钮链接),并绑定了点击事件。这样,用户无需离开当前页面或寻找操作列,在查看完整信息的同时就能完成“复制”或“跳转”操作,体验非常流畅。这里的关键点是,插槽内的组件事件绑定和普通 Vue 组件完全一样,你可以调用 methods 里定义的方法,访问 props 或 pinia/store 中的状态。

3.2 展示多行文本与复杂格式

有时候,单元格里缩略的是一段描述、一份备注。默认的单行 Tooltip 展示大段文字很不美观。我们可以自定义一个多行、带滚动条甚至分段的提示框。

<template #tooltip="{ row, column }">
  <div class="multi-line-tooltip">
    <h4 style="margin-top:0;">{{ column.title }} - 详情</h4>
    <!-- 使用 pre 标签或 white-space: pre-wrap 保留换行符 -->
    <div style="white-space: pre-wrap; max-height: 200px; overflow-y: auto; background: #f9f9f9; padding: 8px; border-radius: 4px;">
      {{ row[column.field] }}
    </div>
    <!-- 可以附加一些元信息 -->
    <div style="font-size: 12px; color: #999; margin-top: 8px;">
      最后更新:{{ row.updateTime || '未知' }}
    </div>
  </div>
</template>

通过设置 white-space: pre-wrap 和 max-height 配合 overflow-y: auto,我们创建了一个可以滚动查看的多行文本区域。你还可以在里面加入标题、分割线、不同字号的说明文字等,让信息的呈现更有层次感。

3.3 全局样式与行为控制:tooltipConfig 的妙用

除了在插槽内部写样式,vxe-table 还提供了一个强大的 tooltipConfig 配置对象,用于控制提示框本身的行为和外观。这在需要统一管理所有提示框时特别有用。

const gridOptions = reactive({
  showOverflow: true,
  // 工具提示全局配置
  tooltipConfig: {
    enterable: true, // 鼠标是否可以进入提示框,为复杂交互提供可能
    showDelay: 300,  // 延迟显示(毫秒)
    hideDelay: 300,  // 延迟隐藏(毫秒)
    maxWidth: 400,   // 提示框最大宽度
    minWidth: 200,   // 提示框最小宽度
    theme: 'dark',   // 主题,可选 'dark' 或 'light'(默认)
    // 甚至可以自定义类名,进行更精细的CSS控制
    className: 'my-global-tooltip'
  },
  columns: [...],
  data: [...]
})
  • enterable: true:这个配置至关重要。当你的自定义提示框内有可交互元素(如输入框、按钮)时,必须将其设为 true。否则,鼠标一离开单元格,提示框就会立刻消失,用户根本点不到里面的按钮。我当初就在这里踩过坑,明明按钮渲染出来了,却怎么都点不到,后来才发现是这个参数没设置。
  • maxWidth / minWidth:有效防止提示框过宽或过窄,影响阅读。
  • theme:快速切换明暗主题,适应不同的页面设计。

你可以把 tooltipConfig 和自定义插槽的样式结合起来。比如,用 tooltipConfig 设置统一的宽度和延迟,然后在插槽模板的根元素上使用 className 定义的类名,来编写具体的内部布局样式。这样既能保证全局一致的行为,又能满足不同列的特殊UI需求。

4. 避坑指南与性能优化:让自定义提示既强大又稳健

功能强大也意味着可能遇到的问题更多。下面分享几个我在实际项目中总结出来的“坑点”和优化建议。

4.1 常见问题排查

  1. 插槽不生效? 请按顺序检查:

    • 第一步:对应的 showHeaderOverflow/showOverflow/showFooterOverflow 是否已设为 true?
    • 第二步:插槽名称是否拼写正确?是 #header-tooltip,不是 #header-tooltips。
    • 第三步:数据是否真的溢出了?可以临时把列宽调得非常小来测试。
    • 第四步:检查浏览器控制台是否有 Vue 渲染错误或组件未找到的警告。
  2. 提示框闪烁或定位不准? 这通常发生在动态数据或表格布局变化后。可以尝试:

    • 确保 vxe-grid 被一个具有确定尺寸的容器包裹,避免容器尺寸变化导致表格重算时提示框定位异常。
    • 如果表格数据是异步加载的,在数据加载完成后再进行需要依赖表格布局的操作。
  3. 自定义内容中的事件不触发? 首先确认 tooltipConfig.enterable 是否设置为 true。其次,检查事件绑定是否正确,自定义插槽内的模板和组件,其作用域与当前 Vue 组件实例是相同的,可以直接访问 methods、computed 等。

4.2 性能优化考量

虽然自定义插槽很灵活,但不当使用也可能带来性能问题,尤其是在渲染大量数据行时。

  • 避免在插槽模板中进行复杂计算:插槽内容在每次提示框显示时都可能被重新渲染。如果模板中有复杂的 v-if/v-for 或调用重型计算函数,可能会引起卡顿。建议将复杂计算提前到 computed 属性或数据预处理阶段。
  • 谨慎使用巨量的DOM节点:就像原始文章里那个夸张的例子,在提示框里循环渲染几十个 div 和链接,这在实际项目中是绝对要避免的。提示框内容应保持简洁、聚焦。如果需要展示大量信息,考虑使用弹出层(Modal)或抽屉(Drawer)组件,而不是 Tooltip。
  • 利用 v-if 按需渲染复杂内容:如果某个自定义提示框内容非常复杂(比如内嵌了一个小图表),可以考虑用 v-if 绑定一个标志位,只有当用户真正悬停一段时间(或点击某个图标)后才渲染复杂内容,避免不必要的初始渲染开销。
<template #tooltip="{ row, column }">
  <div>
    <div>基础信息: {{ row.name }}</div>
    <!-- 复杂图表组件按需加载和渲染 -->
    <complex-chart v-if="showChartForRow === row.id" :data="row.detail" />
    <button @click="toggleChart(row.id)">查看图表</button>
  </div>
</template>

4.3 设计建议:何时用?怎么用?

不是所有溢出内容都需要花里胡哨的自定义提示。我的经验是:

  • 默认 Tooltip 够用吗? 如果只是单纯显示被截断的文本,showOverflow: true 提供的默认提示是最简单、性能最好的选择。
  • 需要交互吗? 如果用户需要对提示内容进行操作(复制、跳转、确认),自定义插槽是唯一的选择。
  • 需要增强信息吗? 如果除了完整文本,还需要展示附加信息(如状态标签、相关统计、操作历史),自定义插槽非常合适。
  • 需要品牌化统一吗? 如果产品对 UI 一致性要求很高,需要 Tooltip 符合设计规范,那么自定义样式是必须的。

一个良好的实践是,在项目的表格组件封装层,预先定义好几套常用的提示框插槽模板,比如 LinkTooltip(带链接的)、MultiLineTooltip(多行文本的)、ActionTooltip(带操作按钮的)。然后在具体的业务表格中,根据需要引入并绑定相应的插槽,这样可以极大提高开发效率和维护性。

说到底,技术是为体验服务的。vxe-table 的自定义插槽模板,给了我们一把强大的钥匙,去解决“内容展示与空间限制”这个经典矛盾。从简单的样式定制,到嵌入交互操作,再到呈现复杂信息结构,它的灵活性远超乎一个简单的“提示框”。关键在于,我们作为开发者,要理解其原理,善用其特性,并在性能与体验之间找到最佳的平衡点。下次当你的产品经理再提出“这里鼠标放上去能不能...”的需求时,你就可以自信地告诉他:“没问题,我们不仅可以显示完整内容,还能让它变得更好用。”

vxe-table 自定义插槽实现单元格内容溢出提示的高级应用 本文深入探讨了vxe-table中自定义插槽实现单元格内容溢出提示的高级应用。通过详细解析三种插槽类型(#header-tooltip、#tooltip、#footer-tooltip)的配置与使用场景,结合实战案例展示了如何实现带交互的复杂提示框和动态内容控制,帮助开发者解决表格数据展示中的常见问题并提升用户体验。 阅读详情

相关推荐

Vue3项目实战:vxe-table自定义单元格提示模板的5种高级玩法

本文深入探讨了Vue3项目中vxe-table自定义单元格提示模板的5种高级玩法,包括交互式链接提示、多行富文本展示、复合组件集成、动态数据加载和响应式布局适配。通过实战案例和代码示例,帮助开发者解决企业级后台管理系统中的数据展示难题,提升用户体验和开发效率。

weixin_30369041的博客 363

自定义vxe-table表头标题文字过多,显示两行多余省略号并给出tooltip

自定义vxe-table表头标题文字过多,显示两行多余省略号并给出tooltip

仗剑行于江湖,执笔记江湖事。 3729

NexIoT AI物联网平台 是一款基于Java 25 AI+创新的"真·零代码侵入"企业级物联网平台

基于Java 25 AI+创新的"真·零代码侵入"企业级物联网平台 | 开箱即用 | 设备驱动完全外置,一键导出即用 | 支持TCP、MQTT、Modbus、天翼物联等多协议多平台接入 | 基于浏览器的调试IDE、插件化和热部署 | 驱动生态共享,你对接的设备我可直接导入

vxe-table自定义插槽应用:高级表格内容定制

你是否还在为表格内容展示单调、无法满足复杂业务需求而困扰?是否遇到过需要在表格中嵌入按钮、图片、进度条等元素的场景?本文将系统讲解vxe-table自定义插槽(Slot)的应用技巧,带你掌握从基础到高级的表格内容定制方案,让你的数据展示既专业又灵活。 读完本文你将学到: - 插槽(Slot)在vxe-table中的核心作用与应用场景 - 7种常用插槽类型的具体实现方法 - 高级插槽应用技巧(动态...

gitblog_01069的博客 1097

人工智能基于Spring AI的流程编排技术:Java开发者实现RAG、工具调用与多Agent协作的系统化方法论

「AI大模型」Spring-AI-流程编排主流做法-保姆级教程 内容概要:本文是一份关于 Spring AI 1.0 GA 版本中流程编排的系统性教程,重点讲解如何利用 Spring AI 的核心机制实现 AI 应用中的标准化、可复用的流程控制。文章从环境搭建入手,深入介绍 ChatClient 作为编排入口的使用方式,并详细阐述 Advisors 拦截链在实现安全过滤、记忆管理、检索增强生成(RAG)、工具调用等功能中的核心作用。进一步覆盖结构化输出、跨进程通信协议 MCP 及基于状态图的复杂工作流引擎 Spring AI Alibaba Graph 等高级编排能力,最后通过一个集成 RAG、工具调用与对话记忆的生产级 Agent 实战案例,展示了全流程自动化的能力。整套体系借鉴了 Servlet Filter 和 LangGraph 思想,强调“约定优于配置”的工程化设计。; 适合人群:具备 Spring Boot 基础,希望系统掌握 AI 应用流程编排的 Java 开发者,尤其是从事企业级 AI 功能开发、Agent 构建及相关平台建设的技术人员。; 使用场景及目标:① 构建具备记忆、RAG、工具调用等复合能力的智能助手;② 实现可插拔、高复用、易测试的 AI 流程组件;③ 设计支持循环、分支和并行的复杂 Agent 工作流;④ 推动跨服务、跨语言的 AI 工具标准化集成(通过 MCP)。; 阅读建议:此资源以 Spring 官方及 Alibaba 生态权威资料为基础,内容紧跟 1.0 GA 最新演进,建议结合官方文档同步实践代码,特别注意版本迁移要点(如 artifactId 更名、Advisor 替换等),并在实际项目中遵循最佳实践规避常见陷阱。

产业园区如何精准识别并引进符合本地产业特色的优质科技成果转化项目?.docx

科易网基于AI模型+行业大数据,在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,推出科技创新领域的AI+工具与数智化解决方案,推动科技创新与产业创新智能化发展。

vxe-table 自定义单元格提示模板实战:从基础配置到高级应用

本文详细介绍了vxe-table自定义单元格提示模板的实战应用,从基础配置到高级技巧全面解析。涵盖表头、单元格和表尾三种插槽模板的使用方法,以及tooltipConfig深度配置、可进入式提示框开发等高级功能,帮助开发者提升表格交互体验。特别适合需要处理复杂表格展示的企业级应用场景。

weixin_28693309的博客 174

产业园区如何高效精准匹配企业与科研机构的技术成果?.docx

科易网基于AI模型+行业大数据,在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,推出科技创新领域的AI+工具与数智化解决方案,推动科技创新与产业创新智能化发展。

详解 vxe-table:打造高效数据表格的实用指南

本文介绍了基于Vue的高性能表格组件vxe-table的核心用法。主要内容包括:vxe-table的安装引入、基础表格结构配置、核心配置项详解(如基础属性、列配置和数据绑定)、自定义模板的实现方法(状态列和操作列),以及常用功能如复选框操作和加载状态控制。文章还提供了实践技巧,建议将表格封装为可复用组件,并针对大数据量进行性能优化。vxe-table功能丰富灵活,能满足各种数据展示需求,推荐结合官方文档进一步学习高级功能。

weixin_60474741的博客 1676

薄膜铌酸锂调制器:高带宽、低驱动电压与高线性度优势推动高速光通信与数据中心互连升级.docx

薄膜铌酸锂调制器:高带宽、低驱动电压与高线性度优势推动高速光通信与数据中心互连升级

乘用车用电动油泵:电动化驱动乘用车用电动油泵迈向集成化与智能热管理.docx

乘用车用电动油泵:电动化驱动乘用车用电动油泵迈向集成化与智能热管理

【bug修复】解决 vxe-table 在 Flex 布局下固定列与数据列对不齐的问题

本文先梳理 vxe-table 完整基础介绍与选型要点,再从旧代码硬编码高度的缺陷切入,讲解 Flex 纵向弹性布局的改造思路,拆解min-height:0等关键样式的底层作用,同时修复滚动条尺寸不一致引发的列错位问题,给出企业后台表格自适应通用解决方案。

weixin_62593868的博客 850

高校技术转移办公室人员如何利用平台提升技术成果的市场转化率?.docx

科易网基于AI模型+行业大数据,在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,推出科技创新领域的AI+工具与数智化解决方案,推动科技创新与产业创新智能化发展。

vscode_cli_alpine_arm64_cli.tar.gz

vscode_cli_alpine_arm64_cli.tar

阿里云云原生架构白皮书文档

阿里云云原生架构白皮书,由阿里云内部技术团队合著,对整个阿里云云原生产品和架构理念进行了全面深入介绍

国央企创新负责人如何构建高效的创新资源协同机制?.docx

科易网基于AI模型+行业大数据,在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,推出科技创新领域的AI+工具与数智化解决方案,推动科技创新与产业创新智能化发展。

三相四桥臂电压不对称跌落补偿动态电压恢复器DVR(Simulink仿真实现)

内容概要:本文围绕三相四桥臂动态电压恢复器(DVR)在电压不对称跌落下的补偿控制展开研究,基于Simulink搭建完整的仿真实验系统。系统采用三相四桥臂逆变器结构,能够有效应对不平衡负载及电网电压的负序、零序分量问题。核心控制策略引入多准PR(Proportional Resonant)控制技术,实现对谐波与不平衡分量的精准抑制,并结合RIME(Rider-Inspired Metaheuristic Optimization)智能优化算法对PID控制器参数进行整定,显著提升了系统的动态响应速度与补偿精度。仿真模型集成了先进的控制逻辑与优化机制,配套提供参考文献与详细说明文档,有助于深入理解与复现实验结果。; 适合人群:电气工程、自动化、电力电子与电力系统相关专业的研究生、科研人员及从事电能质量治理的技术工程师;具备一定控制系统建模与仿真能力的高年级本科生或初级研究人员。; 使用场景及目标:①研究DVR在三相电压不对称跌落工况下的补偿性能;②掌握三相四桥臂逆变器在不平衡条件下的建模与控制方法;③学习多准PR控制策略的设计原理及其在并联控制中的应用;④实践RIME等智能优化算法在PID参数整定中的实现与效果验证;⑤支撑毕业设计、科研课题或工程项目的仿真验证工作。; 阅读建议:建议结合提供的Simulink模型、参考文献与说明文档循序渐进地学习,重点关注多准PR控制器的结构设计、坐标变换、谐振系数设置以及RIME优化算法的实现流程,可进一步拓展至其他智能算法对比分析与系统鲁棒性改进研究。

Vivado 2018.3实战:用IDELAYE3和ISERDESE3搞定高速ADC数据采集(附仿真源码)

本文详细介绍了在Vivado 2018.3中使用Xilinx UltraScale架构的IDELAYE3和ISERDESE3原语实现高速ADC数据采集的实战方法。通过分析5GHz采样系统的时序挑战,提供从PCB布局到Vivado实现的完整解决方案,包括精密时序校准、多相位数据重组及系统级调试技巧,并附赠仿真源码助力工程师快速掌握高速数据采集技术。

weixin_30567225的博客 578
上一篇: 手把手教你构建GB28181-2016标准的公网流媒体服务器(基于ZLMediaKit与WVP-Pro)
下一篇: 【3DSlicer】从心脏CT影像到3D打印:STL/OBJ模型导出全流程解析
y7z8a
博客等级 码龄1天 0粉丝 1695原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值