el-table的使用(持续更新)

文章介绍了如何在外部JS文件中引用Vue实例,通过绑定key值来重新加载子组件。同时,讨论了Vue表格的对齐方式、行数据组装、手动排序、取消选中状态的方法,以及处理checkbox选中和联动的事件。此外,还涉及了合并行样式的动态修改和处理浮点数精度问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在js文件中引用vue实例

外部js文件info.js内部定义变量,用于接收传入的实例:

let  this = null;
export const receive = (vm) => (
	__this = vm;
}

然后在你的vue页面中导入这个外部js文件,并传入this:

import {receive} from './info.js';
// ...
created(){
	receive(this);
}
// ...

传入this这一步后,外部文件中就可以使用this了。

在父组件点击按钮更新公共组件

给想要重新生成的元素绑定key值,每次点击的时候都会重新加载子组件 ,created() 生命周期函数每次都会执行,重新生成dom 元素。也省的用watch去监听了!
从这学来的:https://blog.youkuaiyun.com/shi851051279/article/details/92802027

表头、内容对齐方式不一致

	:row-style="rowStyle"
	:header-cell-style="headerstyle"

根据列字段组装行数据

效果图
在这里插入图片描述
数据结构

    this.data = [
      {
        rent: { label: "单据确认提醒", checked: true },
        dehire: { label: "单据确认提醒", checked: true },
      },
    ];

代码实现
在这里插入图片描述
页面实现
在这里插入图片描述

互换位置、字段上移、字段下移

在这里插入图片描述

根据字段手动触发排序

在这里插入图片描述

取消高亮行的选中样式

通过el-table事件取消选中状态

只需要设置成null就可以

this.$refs.table.setCurrentRow(null);

在获取当前行事件中,选中行再点一次高亮行,取消选中态。

需要开表格的 highlight-current-row 属性。
页面元素绑定事件
对比是否之前的选中行,是则取消选中态
取消选中态

判断用户勾选还是取消勾选

el-table标签中加入select事件
在这里插入图片描述

通过el-checkbox的change事件取消选中状态

当selection不满足我的要求时,改用el-checkbox。
在这里插入图片描述
注意区别:getRows是el-checkbox选中方法,数据不包含现在勾选的行数据时,需要设置反状态。
在这里插入图片描述

手动触发el-checkbox onChange

场景:勾选表格的数据,回显上方el-checkbox的选中状态。产品信息与费用信息只能二选一。
用户操作会触发,用 js 修改不会触发的事件有:
select的onchange:
input[type=“checkbox”]的onchange
input[type=“text”]的onchange
在这里插入图片描述
checkbox
在这里插入图片描述
用getRow事件将上方的checkbox和表格的选择框联动起来
在这里插入图片描述
getRow事件逻辑
在这里插入图片描述

合并行样式修改

根据鼠标移入移出改变样式

设置一个变量存放hover的数据行的key值,通过移入移出事件修改选中样式。在这里插入图片描述在这里插入图片描述

js相关

得出这么多位小数的原因?

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

茶茶呀

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

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

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

打赏作者

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

抵扣说明:

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

余额充值