vxe-grid使用问题

目录

1.slot中使用模板字符串

2.合并表头

坑1:合并表头后一窜一窜的位置

坑2:合并表头后页面位置不够大,表头合并的位置就又窜了

3.footer-method部分行高

4.整列居左的前提下设置前几行居中

坑1:样式加不上去

坑2:单独设置行高并不会影响到footer的行高

5.设置一行中只有某个单元格可以进行编辑

坑1:拿到的columnIndex全是0

6.给footer增加右键菜单

7.flex-grid合并后右侧出现了一块空白导致底部出现滚动条

8.合并footer突然不生效了

9.JSX注入edit自定义方法添加自定义事件

10.合并后表格在进行编辑的时候,由于本身数据是循环赋值的导致数据变了但是页面不更新

11.表格重新渲染之后,合并的样式如果存在窜行,页面效果会抖动很大

12.手写双击编辑,添加编辑条件,仅限有的表格可以编辑

13.表格编辑后重新渲染,手动合并的表格并不会自动合并,重新操作表格合并

14.合并表格后,添加编辑功能后,表格会在单行合并的位置变高

1.slot中使用模板字符串

正常使用例子是,但是不生效

{
          title: '',
          headerClassName: 'bg-color-july hidden-cell',
          field: 'two',
          slots: {
            default: (params, h) => [<span>{vm.cellImmobilizationText(params)}</span>]
          }}

更改后为

{
          title: '',
          headerClassName: 'bg-color-july hidden-cell',
          field: 'one',
          showOverflow: false,
          slots: {
            default: (params, h) => [
              h('span', {
                props: {
                  type: 'text'
                },
                domProps: {
                  innerHTML: vm.cellImmobilizationText(params)
                }
              })
            ]
          }}

2.合并表头

document.querySelector('.custmer-span').setAttribute('rowspan', '3')
            const hiddenCells = document.getElementsByClassName('hidden-cell')
            for (let i = 0; i < hiddenCells.length; i++) {
              hiddenCells[i].style.display = 'none'
            }
{
        type: '',
        params: { name: '' },
        fixed: 'left',
        title: 'hhhhhhhhh',
        width: '110',
        headerClassName: 'custmer-span',
        children: [{
          title: '',
          headerClassName: 'hidden-cell',
          }]
}

坑1:合并表头后一窜一窜的位置
坑2:合并表头后页面位置不够大,表头合并的位置就又窜了

解决办法:

1.合并那一列的 fixed 属性删了

2.点击列高亮删了

  columnConfig: {

    isCurrent: false,

  },

3.footer-method部分行高


  /*  对应 vxe-table 的 size 没有设置的时候  */
  .vxe-table--render-default.border--full .vxe-footer--column
  {
  height: 27px;
  }
  /* 对应 vxe-table 的 size="medium" 的时候*/
  .vxe-table--render-default.size--medium .vxe-footer--column.col--ellipsis{
  height: 27px;
  }
  /* 对应 vxe-table 的 size="small" 的时候*/
  .vxe-table--render-default.size--small .vxe-footer--column.col--ellipsis {
  height: 27px;
  }
  /* 对应 vxe-table 的 size="mini" 的时候*/
  .vxe-table--render-default.size--mini .vxe-footer--column.col--ellipsis{
  height: 27px;
  }

4.整列居左的前提下设置前几行居中

className: params => vm.rowClassName(params),


    rowClassName(params) {
      const { rowIndex } = params
      if (rowIndex < 9) {
        return 'text-align-row-center'
      }
    },


.vxe-body--column{
        line-height: initial;
        &.border-top-dashed{
          border-top: dashed #d9001b;
        }
        &.text-align-row-center{
          text-align: center;
        }
      }
坑1:样式加不上去

一定要用&,不然不生效

坑2:单独设置行高并不会影响到footer的行高

rowConfig: {

    height: 26

  },

5.设置一行中只有某个单元格可以进行编辑

  menuConfig: {
    body: {
      options: [
        [
          {
            code: 'edit',
            name: '編集',
            prefixIcon: 'vxe-icon-edit',
            visible: true,
            disabled: false
          }
        ]
      ]
    },
    visibleMethod: params => {
      const { rowIndex, column } = params
      if (rowIndex === 8 && ['当前需要编辑的行的字段'].includes(column.field)) {
        return true
      } else {
        return false
      }
    }
  },
坑1:拿到的columnIndex全是0

解决办法:根据字段field去区分,不用columnIndex

6.给footer增加右键菜单

7.flex-grid合并后右侧出现了一块空白导致底部出现滚动条

发现是如果合并行为合并到最后一列导致tooltip长度超出单元格长度,如图所示:

把合并的四列改成一样宽就不再有这个问题,猜测tooltip的计算宽度是根据合并的第一个表格来计算的

我这里是将四列改成了统一宽度,或者适当增加第四列,或者直接改c--tooltip最大宽度都可以

8.合并footer突然不生效了

footerClassName里的回调检查返回的class合法吗,注意&

【开发开发着突然不好使了,给我干懵了,代码对比老半天才发现】

9.JSX注入edit自定义方法添加自定义事件

 edit: ({ row }) => <vxe-input onBlur={() => this.editRender(row)} v-model={row[index][PERIODS_FIELD[indexPeriod]]}></vxe-input>

10.合并后表格在进行编辑的时候,由于本身数据是循环赋值的导致数据变了但是页面不更新

解决办法,手动让他知道更新了数据

editRender(params) {
      // this.gridReality++
      this.computeData.push([]) // 添加一个空数组到末尾
      this.computeData.pop() // 移除最后一个元素
}

11.表格重新渲染之后,合并的样式如果存在窜行,页面效果会抖动很大

解决办法:不用overflow去使内容换行,而是className在样式添加换行方法,添加方法同4

&.text-align-row-over{
          .vxe-cell{
            max-height:100% !important;
            width:100% !important;
            height: 100%;
            overflow: auto;
            text-overflow: clip;
            white-space: normal;
          }
        }

12.手写双击编辑,添加编辑条件,仅限有的表格可以编辑

更改编辑项config,并且在column中仅对可操作列进行编辑项的添加

editRender: {
                name: 'input',
                attrs: { type: 'number' }
              },
 editConfig: {
    trigger: 'dblclick',
    mode: 'cell',
    beforeEditMethod({ rowIndex, column }) {
      // const { khTwo } = $table.params
      if ((rowIndex === 8 || rowIndex === 10)) {
        return true
      } else {
        return false
      }
    }
  },

13.表格编辑后重新渲染,手动合并的表格并不会自动合并,重新操作表格合并

this.$refs.gridCompute.setMergeCells(this.gridPropsCompute.margeCell)

14.合并表格后,添加编辑功能后,表格会在单行合并的位置变高

解决办法,硬改

.vxe-table--render-default.size--mini .vxe-body--column:not(.col--ellipsis) {
      padding: 0px 0px;
    }
    .vxe-table--render-default.vxe-editable.size--mini .vxe-body--column{
      height: 26px;
    }

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/935078.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Unity3D下采集camera场景并推送RTMP服务实现毫秒级延迟直播

技术背景 好多开发者&#xff0c;希望我们能够分享下如何实现Unity下的camera场景采集并推送rtmp服务&#xff0c;然后低延迟播放出来。简单来说&#xff0c;在Unity 中实现采集 Camera 场景并推送RTMP的话&#xff0c;先是获取 Camera 场景数据&#xff0c;通过创建 RenderTex…

分布式 Raft算法 总结

前言 相关系列 《分布式 & 目录》《分布式 & Raft算法 & 总结》《分布式 & Raft算法 & 问题》 参考文献 《Raft一致性算法论文译文》《深入剖析共识性算法 Raft》 简介 Raft 木筏是一种基于日志复制实现的分布式容错&一致性算法。在Raft算法…

System.Data.OracleClient 需要 Oracle 客户端软件 version 8.1.7 或更高版本

问题1&#xff1a;“/”应用程序中的服务器错误。 System.Data.OracleClient 需要 Oracle 客户端软件 version 8.1.7 或更高版本。 说明: 执行当前 Web 请求期间&#xff0c;出现未经处理的异常。请检查堆栈跟踪信息&#xff0c;以了解有关该错误以及代码中导致错误的出处的详细…

JAVA |日常开发中Websocket详解

JAVA &#xff5c;日常开发中Websocket详解 前言一、Websocket 概述1.1 定义1.2 优势 二、Websocket 协议基础2.1 握手过程2.2 消息格式2.3 数据传输方式 三、Java 中使用 Websocket3.1 Java WebSocket API&#xff08;JSR - 356&#xff09;3.2 第三方库&#xff08;如 Tyrus&…

SpringBoot Maven快速上手

文章目录 一、Maven 1.1 Maven 简介&#xff1a;1.2 Maven 的核心功能&#xff1a; 1.2.1 项目构建&#xff1a;1.2.2 依赖管理&#xff1a; 1.3 Maven 仓库&#xff1a; 1.3.1 本地仓库&#xff1a;1.3.2 中央仓库&#xff1a;1.3.3 私服&#xff1a; 二、第一个 SpringBoot…

【论文阅读】处理器芯片敏捷设计方法:问题与挑战

作者&#xff1a;包云岗老师 包云岗老师是计算机体系结构方向的大牛&#xff0c;推动了体系结构方面的开源事业! 欢迎对本栏目感兴趣的人学习"一生一芯"~ 学习体会&#xff1a; 已有的软硬件生态系统和开发成本制约了对新结构的探索。但目前仍在几种路线上做尝试~ 1…

方案介绍|CW32L010安全低功耗MCU:驱动高速风筒新力量

吹风机一直以来都是消费者日常生活中的高频刚需产品&#xff0c;而高速风筒更是因为其快速干发、护发养发和低噪音的优势&#xff0c;逐渐成为家庭不可或缺的电器之一。 高速风筒通过采用高速电机和优化的气流设计&#xff0c;能够在短时间内快速吹干头发&#xff0c;同时减少…

uniapp uni-table最简单固定表头

需求&#xff1a;固定表头数据&#xff0c;在网上找了半天&#xff0c;啥都有&#xff0c;就是一直实现不了&#xff0c;最后更改代码实现 1.效果 2.主要代码讲解完整代码 表格的父级一定要设置高度&#xff0c;不然会错位&#xff0c;我看网上说设置position&#xff1a;fixed…

单元测试SpringBoot

添加测试专用属性 加载测试专用bean Web环境模拟测试 数据层测试回滚 测试用例数据设定

9. Win11上原生运行Ubuntu

本文介绍如何在win11原生系统上运行ubuntu&#xff0c;不需要额外安装虚拟机&#xff0c;以及如何配置网络等。 1.安装正版Win11 由于正版Win11需要钱&#xff0c;网上能破解的win11可能有问题&#xff0c;但是它们的破解工具&#xff0c;却是能正常用的&#xff0c;所以&…

小皮面板(PHPSTUDY)配置多个域名或IP

问题描述 小皮面板默认采用nginx的静态部署&#xff0c;按照使用nginx的习惯只需要额外添加一个server即可&#xff0c;但是会发现直接往配置文件里添加新的server是不生效的&#xff0c;小皮的官网论坛几乎已经停止维护&#xff0c;因此资料较少&#xff0c;原本也没有仔细使…

基于自注意力网络的SASRec

运用了自注意力网络&#xff08;self-attention network&#xff0c;SAN&#xff09;的序列推荐算法&#xff08;SASRec&#xff09;能以并行化的方式捕捉同一序列上不同时间步间的转移关系&#xff0c;最后通过加权求和的方式得出每个时间步的序列特征。 算法原理&#xff1a;…

软件工程知识点

CMMI 阶段式模型 初始的&#xff1a;过程不可预测且缺乏控制。 已管理的&#xff1a;过程为项目服务。 已定义的&#xff1a;过程为组织服务。 定量管理的&#xff1a;过程已度量和控制。 优化的&#xff1a;集中于过程改进。 CMMI连续式模型 CL0&#xff08;未完成的&#…

#渗透测试#红蓝对抗#SRC漏洞挖掘# Yakit(5)进阶模式-MITM中间人代理与劫持(上)

免责声明 本教程仅为合法的教学目的而准备&#xff0c;严禁用于任何形式的违法犯罪活动及其他商业行为&#xff0c;在使用本教程前&#xff0c;您应确保该行为符合当地的法律法规&#xff0c;继续阅读即表示您需自行承担所有操作的后果&#xff0c;如有异议&#xff0c;请立即停…

Windows11安装Isaac Lab

1.1 下载文件 将 Isaac Lab 仓库克隆到您的工作空间&#xff1a; git clone https://github.com/isaac-sim/IsaacLab.git 1.2 创建Isaac Sim符号链接 F:cd IsaacLab 官方文档里路径/有问题&#xff0c;改成\&#xff09;&#xff1a; # 打开IsaacLab目录cd IsaacLab# 使用…

AI 的时代,新科技和新技术如何推动跨学科的整合?

在当前AI的发展中&#xff0c;我们面临的一个主要挑战就是融合的问题&#xff0c;这实际上不仅是技术上的融合&#xff0c;还有更深层次的哲学层面的思考。 或许在中国这方面的讨论较少&#xff0c;但在西方哲学和神学的语境中&#xff0c;探讨万物的根本和不同学科之间的联系…

力扣打卡12:复原IP地址

链接&#xff1a;93. 复原 IP 地址 - 力扣&#xff08;LeetCode&#xff09; 这道题需要对字符串进行操作&#xff0c;我选择了三层循环&#xff0c;其实还可以递归。 我在循环时进行了剪枝&#xff0c;比如一些情况直接跳出循环。 我的代码&#xff1a; class Solution { p…

R学习——数据框

目录 1数据框的合并 2数据框的访问 2.1 通过索引[] 2.2符号$访问 2.3 attach访问 2.4 with访问 1数据框的合并 当每个内容存储为单独的向量&#xff0c;data.frame可以进行这些内容单独数据框合并。 2数据框的访问 2.1 通过索引[] [i]输出对应的列 [i,]输出对应的行 …

XMOS将在CES 2025上展出多款由边缘AI驱动的创新音效、音频、识别和处理解决方案

全球智能物联网技术领导者暨匠心独到的半导体科技企业XMOS宣布&#xff1a;该公司将再次参加2025年国际消费电子展&#xff08;CES 2025&#xff09;&#xff0c;并将在本届CES上展出一系列由人工智能&#xff08;AI&#xff09;驱动的全新空间音效、语音捕获与降噪、音视频多模…

第一个C++程序--(蓝桥杯备考版)

第一个C程序 基础程序 #include <iostream>//头⽂件 using namespace std;//使⽤std的名字空间 int main()//main函数 {cout << "hello world!" << endl; //输出&#xff1a;在屏幕打印"hello world!" return 0;}main函数 main 函数是…