vue2.6 Ag-grid 使用

2023-11-09

中文文档:ag-grid中文教程 - itxst.com

一.HTML 结构

<ag-grid-vue
   class="ag-theme-alpine"
   id="myGrid"
   :rowData="rowData" //数据源
    @cellEditingStopped="onCellEditingStopped" // 输入停止直接执行 数据保存事件
    :gridOptions="gridOptions" //总配置项
  >
    <ag-grid-column
      v-for="item of gridOptions.columnDefs" //遍历配置项里的表头
      :key="item.prop || item.label" //防止 key值重复
      :field="item.field"  //接受的后端字段
      :headerName="item.headerName" //展示名字
      :width="item.width"
      :pinned="item.pinned" //固定定位 左或者右
      :checkboxSelection="item.checkboxSelection" //复选框勾选事件
      :headerCheckboxSelection="item.headerCheckboxSelection" //头部复选框勾选事件
      :singleClickEdit="item.singleClickEdit" //单元格编辑效果
      :cellEditorFramework="item.cellEditorFramework" //自定义组件配置
      :suppressMovable="item.suppressMovable" //单元格拖拽效果
      :cellRenderer="item.cellRenderer && MedalCellRenderer"// 渲染表格数据(输入框 ,下拉框,多 选框) 表格行自定义事件
      :cellClass=" item.cellClass ? item.cellClass == 'Referenceclass'
      ? Referenceclass
      : 'editinitstyle'
      : ''" //样式修改
      :editable="item.editable ? (item.editable == 'scPriceFunction' && scPriceFunction) 
      :false" //编辑权限以及校验
    ></ag-grid-column>
</ag-grid-vue>

二.data()

gridOptions: {
        rowSelection: 'multiple',
        suppressRowClickSelection: true,
        enableCellTextSelection: true,
        onRowClicked: (event) => {
          this.gridOptions.api.forEachNode(function(item, index) {
            if (index == event.rowIndex) {
              item.data.rowselected = true;
              item.setData(item.data);
            } else {
              item.data.rowselected = false;
              item.setData(item.data);
            }
          });
        },
        onCellDoubleClicked: (event) => {
          if (event.colDef.field === 'projectId' && event.data.opportunity.id) {
            路由跳转
          }
        },
        //拖拽列 拖拽到表格外 不会使其隐藏
        suppressDragLeaveHidesColumns: true,
        //拖拽回调
        onColumnMoved: (event) => {
          let list = [];
          list = event.api.columnController.allDisplayedColumns.map((item) => ({
            field: item.colId,
            pinned: item.pinned
          }));
          this.gridOptions.afterColumnDefs = list;
        },
        rowClassRules:{ag-grid注册使用权}
        rowDeselection: false,
        components: {
          medalCellRenderer: this.MedalCellRenderer
        },
        iShowAgGrid: false,
        //展示列
        columnDefs: [],
        //后台传的列的顺序 和 改变后的顺序
        afterColumnDefs: [],
        //所有的列
        beforeColumnDefs: [
          {
            headerName: 'Line Number',
            field: 'lineNumber',
            minwidth:'100',
            pinned: 'left'
          },
        ],

三.js

//单元格停止编辑时机
    onCellEditingStopped(params) {
     // 可以给填写的数据做正则校验
    },
    //判断单价
    scPriceFunction(params) { //根据当前行可以切换是否开启编辑
      if (this.isfalse == true) {
        return true;
      } else {
        return false;
      }
    },
    //渲染表格数据(输入框 ,下拉框,多 选框) 表格行自定义事件
    MedalCellRenderer(params) { //根据后端数据 创建对应DOM 例如 复选框checkbox
      if (params.colDef.field == 'isRecordedRebate') {
        var eDiv129 = document.createElement('div');
        eDiv129.innerHTML = '<input disabled class="check129" type="checkbox" />';
        let check129 = eDiv129.querySelectorAll('.check129')[0];
        if (params.data.isRecordedRebate) {
          check129.checked = 'checked';
        } else {
          check129.checked = '';
        };
        return eDiv129;
      };

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

vue2.6 Ag-grid 使用 的相关文章

随机推荐

  • Apache Pig的一些基础概念及用法总结4(转)

    26 错误 ERROR org apache pig tools grunt Grunt ERROR 2042 Error in new logical plan Try Dpig usenewlogicalplan false 的可能原因
  • decltype和declval的用法

    1 decltype是c 11以后出现的一个新的关键字 是用来萃取表达式或者变量或者函数返回值的类型的 具体用法可以参考官网 https en cppreference com w cpp language decltype 2 declv
  • 华为-人民币转换

    java实现 题目描述 考试题目和要点 1 中文大写金额数字前应标明 人民币 字样 中文大写金额数字应用壹 贰 叁 肆 伍 陆 柒 捌 玖 拾 佰 仟 万 亿 元 角 分 零 整等字样填写 2 中文大写金额数字到 元 为止的 在 元 之后
  • xss基础知识点

    xss 1 概念 跨站脚本攻击 英文全称Cross Site Script xss攻击 通常指黑客通过 HTML注入 篡改了网页 插入了恶意的脚本 从而在用户浏览网页时 控制用户浏览器的一种攻击 常见场景 标签内的xss Xss 属性里面的
  • 安装Flutter + Android sdk + vs code运行Flutter项目(史上最详解)

    前言 Flutter开发app是基于Dart语言开发的 就好比html网页开发基于JavaScript一样 而浏览器内核都可以编译JavaScript代码 所有开发html网页不需要下载啥SDK 直接在浏览器就能运行 首先我们安装Dart语
  • python 用for i in range(10)生成列表

    这种方法叫列表解析 1 列出1 10的平方和 结果用列表存储 要求 列出1 10所有数字的平方 1 普通方法 L for i in range 1 11 L append i 2 print L 1 4 9 16 25 36 49 64 8
  • 如何实现通用分页(来看我这一篇就够了超级详细内含源码!!!)

    目录 一 页面显示分页效果 1 1分析页面展示所要展示的属性有哪些 1 2分析页面有哪些每次发送请求有哪些公共的参数 二 具体实现前端通用分页 2 1分析思路 2 2具体实现的过程 2 2 1标签助手类 2 2 2创建标签库描述文件 tld
  • QTableView获取选中行指定列的内容(新手上路)

    1 第一次用QT写东西 在tableview对象后面的函数列表里翻来翻去 找了个看起来顺眼的selectedRows来试图获取选中行的内容 然后插入到list里面 QList
  • TQ2440移植u-boot2016.11全过程记录-【5】设置从NOR FLASH启动U-BOOT

    TQ2440移植u boot2016 11 设置从NOR FLASH启动u boot gedit include configs tq2440 h 屏蔽掉宏CONFIG SKIP LOWLEVEL INIT 修改宏CONFIG SYS TE
  • ModelArts平台部署模型

    相关步骤 构建镜像 上传镜像至swr服务 模型管理建立模型 部署模型上线 调用接口 1 构建自定义镜像 基于Dockfile文件构建 文件准备及文件结构 关于深度学习中的概念 训练 train 以图像识别为例 基于一个标注好的数据集训练好了
  • React-基础语法

    React 基础语法 React 搭建脚手架 安装node JS 安装React脚手架 创建项目 运行项目 其他命令 使用VSCode 安装插件 基础插件 文档目录结构 根组件App js 解析 组件解析 类组件 有状态组件 函数组件 JS
  • 软件测试项目案例哪里找?【银行/教育/商城/金融/等等....】

    项目一 ShopNC商城 项目概况 ShopNC商城是一个电子商务B2C电商平台系统 功能强大 安全便捷 适合企业及个人快速构建个性化网上商城 包含PC IOS客户端 Adroid客户端 微商城 系统PC 后台是基于ThinkPHP MVC
  • ### Paper about Event Detection

    Paper about Event Detection author gr date 2014 03 15 email forgerui gmail com 看一些相关的论文 1 Efficient Visual Event Detecti
  • 【动态规划】最少按多少下开关使灯全亮

    文章目录 无环条件下 题目描述 解题思路 递归版本 迭代版本 有环状态下 题目描述 解题思路 递归版本 迭代版本 无环条件下 题目描述 给定一个数组arr 长度为N arr中的值不是0就是1 arr i 表示第i栈灯的状态 0代表灭灯 1代
  • 介绍:教育研究:定量,定性和混合方法——伯克约翰逊,拉里克里斯滕森著

    www sagepub com bjohnson4e 章节资源的网站
  • 【图形学】GAMES101 Assignment3 作业框架分析

    GAMES101 Assignment3 作业框架分析 文章目录 GAMES101 Assignment3 作业框架分析 rasterizer draw rasterizer rasterize triangle 参考 写作业之前看了一眼代
  • java 多线程学习笔记之 线程互斥

    许多线程共享同一数据 这种情况在现实的生活中也是经常发生的 比如火车站的火车票售票系统 火车票售票系统是一个常年运行的系统 为了满足乘客的需求 我们不能只设一个窗口 必须设很多的售票窗口 每个售票窗口就像一个线程 它们各自运行 共同访问相同
  • GateWay 服务网关

    介绍 Cloud全家桶中有个很重要的组件就是网关 在1 x版本中都是采用的Zuul网关 但在2 x版本中 zuul的升级一直跳票 SpringCloud最后自己研发了一个网关替代Zuul 那就是SpringCloud Gateway Gat
  • 2023年kali linux安装中文输入法

    apt get install fcitx 安装输入法框架 apt get install fcitx googlepinyin 安装谷歌输入法 reboot 重启系统 重启之后右上有个小键盘点击里面的配置 添加google输入法 把Goo
  • vue2.6 Ag-grid 使用

    中文文档 ag grid中文教程 itxst com 一 HTML 结构