Vue3 Element Plus 中el-table-column索引使用问题

在 Element Plus 的 el-table 组件中,使用 scope.index 是不准确的。正确的索引属性应该是 scope.$index。你的代码需要调整为:

vue

复制

下载

<el-button type="primary" size="default" text @click="onModifyClick(scope.$index, scope.row)"
>编辑</el-button>

具体说明:

  1. 索引属性名错误

    • Element Plus 的表格作用域插槽暴露的是 $index 属性(带$符号),不是 index

    • scope.index 会得到 undefined,实际应该使用 scope.$index

  2. 推荐验证方式

    vue

    复制

    下载

    <template #default="scope">{{ console.log(scope) }} <!-- 打印查看完整 scope 对象 -->
    </template>

scope 对象

  1. 需要注意的特殊情况

    • 当表格存在多级表头时,$index 对应的是数据数组的索引

    • 如果表格数据被过滤/排序后,$index 反映的是当前显示行的索引,不是原始数据索引

    • 对于需要绝对索引的场景,建议直接使用行数据的唯一标识(如你删除操作中使用的 materialNo)

  2. 更健壮的写法建议

vue

复制

下载

<el-button type="primary" size="default" text @click="onModifyClick(scope.$index, { ...scope.row, $index: scope.$index })"
>编辑</el-button>

完整修正后的代码:

vue

复制

下载

<el-table-column label="操作" header-align="center" align="center" fixed="right" width="120"
><template #default="scope"><el-buttontype="primary"size="default"text@click="onModifyClick(scope.$index, scope.row)">编辑</el-button><el-buttontype="danger"size="default"text@click="onDeleteClick(scope.row.materialNo)">删除</el-button></template>
</el-table-column>

如果发现索引值不符合预期,请检查:

  1. el-table 是否设置了 row-key

  2. 表格数据是否是响应式数据(ref/reactive)

  3. 是否使用了过滤/排序功能(这会改变显示行的索引)

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Ubuntu20.04下使用dpkg方式安装WPS后,将WPS改为中文界面方法

Ubuntu20.04下使用dpkg方式安装WPS后&#xff0c;将WPS改为中文界面方法 说明方法 说明 Ubuntu20.04下使用dpkg方式安装WPS后&#xff0c;打开WPS后&#xff0c;发现界面是英文的&#xff0c;如有需要可以按照下面的方法将其改为中文界面。 方法 cd /opt/kingsoft/wps-offic…

【​​HTTPS基础概念与原理​】​​HTTPS vs HTTP:为什么现代网站必须用HTTPS?

以下是关于 HTTPS vs HTTP 的详细对比分析&#xff0c;涵盖安全性、性能差异及SEO影响&#xff0c;帮助您全面理解为何现代网站必须采用HTTPS&#xff1a; 一、安全性对比&#xff1a;HTTPS 如何解决 HTTP 的致命缺陷 1. HTTP 的安全隐患 • 明文传输&#xff1a;HTTP 数据以明…

算法刷题(Java与Python)1.二分查找

目录 二分查找 思路 总体 细节 问题一&#xff0c;为什么循环的条件是left<right ,为什么要有等号呢 问题二&#xff0c;为什么中间值是left (right - left) / 2 问题三&#xff0c;为什么最后返回的是左边的值呢 情况 1&#xff1a;target 存在于数组中 情况 2&a…

芯片生态链深度解析(二):基础设备篇——人类精密制造的“巅峰对决”

【开篇&#xff1a;设备——芯片工业的“剑与盾”】 当ASML的EUV光刻机以每秒5万次激光脉冲在硅片上雕刻出0.13nm精度的电路&#xff08;相当于在月球表面精准定位一枚二维码&#xff09;&#xff0c;当国产28nm光刻机在华虹产线实现“从0到1”的突破&#xff0c;这场精密制造…

MongoTemplate 基础使用帮助手册

前言 MongoDB 是一种流行的 NoSQL 数据库&#xff0c;适合存储大量的非结构化数据。MongoTemplate 是 Spring Data MongoDB 中的一个核心组件&#xff0c;它提供了一组丰富的 API 来与 MongoDB 进行交互。它封装了许多常见的数据库操作&#xff0c;使开发者能够轻松执行 CRUD 操…

psotgresql18 源码编译安装

环境&#xff1a; 系统&#xff1a;centos7.9 数据库&#xff1a;postgresql18beta1 #PostgreSQL 18 已转向 DocBook XML 构建体系&#xff08;SGML 未来将被弃用&#xff09;。需要安装 XML 工具链&#xff0c;如下&#xff1a; yum install -y docbook5-style-xsl libxsl…

C++编程起步项目

员工信息管理系统 需求 Employee.h #pragma once#include<iostream> #include<string>using namespace std;class Employee { public:int id; // 编号string name; // 姓名string position; // 岗位int deptId; // 部门编号Employee();Employee(int id, string n…

Linux的MySQL头文件和找不到头文件问题解决

头文件 #include <iostream> #include <mysql_driver.h> #include <mysql_connection.h> #include <cppconn/statement.h> #include <cppconn/resultset.h> #include <cppconn/prepared_statement.h> #include <cppconn/exception.h&g…

[ linux-系统 ] 命令行参数 | 环境变量

命令行参数 命令行参数是指用户在启动程序时通过命令行传递给程序的参数。这些参数可以用于控制程序的行为、传递输入数据或配置选项。 在 C/C 中&#xff0c;命令行参数通过 main 函数的参数传递 命令行参数列表 argc:参数的个数 argv[]&#xff1a;参数的清单 为什么要…

新书速览|鸿蒙HarmonyOS NEXT开发之路 卷2:从入门到应用篇

《鸿蒙HarmonyOS NEXT开发之路 卷2&#xff1a;从入门到应用篇》 01 本书内容 《鸿蒙HarmonyOS NEXT开发之路 卷2&#xff1a;从入门到应用篇》是一本深度聚焦HarmonyOS NEXT应用开发的全方位指导书&#xff0c;内容遵循由浅入深的原则展开。全书分为基础知识、应用开发进阶和…

经典密码学和现代密码学的结构及其主要区别(1)凯撒密码——附py代码

密码学是一门通过使用代码和密码来保护信息的艺术与科学&#xff0c;其历史可以追溯到数千年前。古典密码学代表了这一古老学科早期的篇章。早在计算机和现代加密算法出现之前&#xff0c;历史上的各个文明就依靠巧妙的方法来保护机密、安全通信以及获取战略优势。 古典密码学…

Python60日基础学习打卡D30

回顾&#xff1a; 导入官方库的三种手段导入自定义库/模块的方式导入库/模块的核心逻辑&#xff1a;找到根目录&#xff08;python解释器的目录和终端的目录不一致&#xff09; # 直接导入 from random import randint print(randint(1, 10)) # 导入自定义库 import module m…

Linux利用多线程和线程同步实现一个简单的聊天服务器

1. 概述 本文实现一个基于TCP/IP的简单多人聊天室程序。它包含一个服务器端和一个客户端&#xff1a;服务器能够接收多个客户端的连接&#xff0c;并将任何一个客户端发来的消息广播给所有其他连接的客户端&#xff1b;客户端则可以连接到服务器&#xff0c;发送消息并接收来自…

ubuntu系统 | dify+ollama+deepseek搭建本地应用

1、安装 Ollama 下载并安装 Ollama (llm) wangqiangwangqiang:~$ curl -fsSL https://ollama.ai/install.sh | bash >>> Installing ollama to /usr/local >>> Downloading Linux amd64 bundle0.3% curl -fsSL https://ollama.ai/install.sh &#xff08;下…

从纸质契约到智能契约:AI如何改写信任规则与商业效率?​——从智能合约到监管科技,一场颠覆传统商业逻辑的技术革命

一、传统合同的“低效困境”&#xff1a;耗时、昂贵、风险失控 近年来&#xff0c;全球商业环境加速向数字化转型&#xff0c;但合同管理却成为企业效率的“阿喀琉斯之踵”。据国际商会&#xff08;International Chamber of Commerce&#xff09;数据显示&#xff0c;全球企业…

【机器学习|学习笔记】基于生成对抗网络的孪生框架(GAN-based Siamese framework,GSF)详解,附代码。

【机器学习|学习笔记】基于生成对抗网络的孪生框架(GAN-based Siamese framework,GSF)详解,附代码。 【机器学习|学习笔记】基于生成对抗网络的孪生框架(GAN-based Siamese framework,GSF)详解,附代码。 文章目录 【机器学习|学习笔记】基于生成对抗网络的孪生框架(G…

UEFI Spec 学习笔记---33 - Human Interface Infrastructure Overview---33.2.6 Strings

33.2.6 Strings UEFI 环境中的 string 是使用 UCS-2 格式定义&#xff0c;每个字符由 16bit 数据表示。对于用户界面&#xff0c;strings 也是一种可以安装到 HIIdatabase 的一种数据。 为了本土化&#xff0c;每个 string 通过一个唯一标识符来识别&#xff0c;而每一个标识…

Stable Diffusion 学习笔记02

模型下载网站&#xff1a; 1&#xff0c;LiblibAI-哩布哩布AI - 中国领先的AI创作平台 2&#xff0c;Civitai: The Home of Open-Source Generative AI 模型的安装&#xff1a; 将下载的sd模型放置在sd1.5的文件内即可&#xff0c;重启客户端可用。 外挂VAE模型&#xff1a…

并发编程(5)

抛异常时会释放锁。 当线程在 synchronized 块内部抛出异常时&#xff0c;会自动释放对象锁。 public class ExceptionUnlockDemo {private static final Object lock new Object();public static void main(String[] args) {Thread t1 new Thread(() -> {synchronized …

贵州某建筑物挡墙自动化监测

1. 项目简介 某建筑物位于贵州省某县城区内&#xff0c;靠近县城主干道&#xff0c;周边配套学校、医院、商贸城。建筑物临近凤凰湖、芙蓉江等水系&#xff0c;主打“湖景生态宜居”。改建筑物总占地面积&#xff1a;约5.3万平方米&#xff1b;总建筑面积&#xff1a;约15万平…