当前位置: 首页 > news >正文

【前端】记录各种控制台警告/bug

一、Element Plus

1、控制台警告:“Runtime directive used on component with non-element root node. The directives will not function as intended.”

在这里插入图片描述

错误原因:在 Vue 组件上使用了运行时指令(指那些在运行时动态绑定到 DOM 元素上的指令),但是该组件的根节点不是一个标准的 DOM 元素(例如 div 或 span)

原因:自定义指令不能放到组件上,而是要放到自有的元素上。

解决方法
1.找到报警告的位置, 确认组件的根节点是否为一个有效的 DOM 元素
2.运行时指令:v-loading、v-show、v-if…
3.如下图示例:el-dialog上不能使用自定义指令v-loading

Element UI 和 Element Plus 中的 el-dialog组件本身是一个封装好的组件,它有自己的内部结构和生命周期。当你尝试在 el-dialog 上使用 v-loading指令时,可能会遇到一些问题,主要是因为 v-loading 指令期望的是一个标准的 DOM 元素,而 el-dialog的根节点可能不是这样的元素。

确认组件的根节点是否为一个有效的 DOM 元素

2、Ignored: ResizeObserver loop limit exceeded

element-plus 使用el-table 在切换tab栏时报错:
在这里插入图片描述
原因:ResizeObserver不能处理所有的observations导致报错;

解决方法:
1.阻止table的重绘,给每个<el-table-column>设置固定的width,缺点是无法自适应宽度。
2.给每个<el-table-column>设置min-width
3.添加debounce()防抖方法,在App.vue文件中添加:

  const debounce = (fn, delay) => {let timer = null;return function () {let context = this;let args = arguments;clearTimeout(timer);timer = setTimeout(function () {fn.apply(context, args);}, delay);}
}const _ResizeObserver = window.ResizeObserver;
window.ResizeObserver = class ResizeObserver extends _ResizeObserver{constructor(callback) {callback = debounce(callback, 16);super(callback);}
}

4.给回调进行节流,在App.vue中添加以下代码:

// 解决 ElTable 自动宽度导致的「ResizeObserver loop limit exceeded」问题
const fixElTableErr = (table) => {const oldResizeListener = table.methods.resizeListener;table.methods.resizeListener = function () {window.requestAnimationFrame(oldResizeListener.bind(this));};
};
// 在Vue.use之前执行此函数
fixElTableErr(Table);
http://www.lryc.cn/news/422986.html

相关文章:

  • 猫咪掉毛严重怎么办?铲屎官家庭必备清理工具——宠物空气净化器
  • 顺序表的实现——数据结构
  • 【模块化】CommonJS,AMD规范,CMD规范,ES6模块化
  • 3.js - 顶点着色器、片元着色器的联系
  • kotlin简介
  • Mintegral出海系列:解锁全球应用商店新增长路径
  • Qt 哈希加密之 QCryptographicHash
  • 渗透第二次作业
  • 42.【C语言】冒泡排序
  • Linux安全与高级应用(七)深入Linux Shell脚本编程:循环与分支结构的高级应用
  • python爬虫滑块验证及各种加密函数(基于ddddocr进行的一层封装)
  • pytorch学习一(扩展篇):miniconda下载、安装、配置环境变量。miniconda创建多版本python环境。整理常用命令(亲测ok)
  • 说一下Android中的IdleHandler
  • Flake8 和 Autopep8 使用指南
  • OpenHarmony(数据)通信协议、数据存储—protobuf
  • vue3 依赖注入 vueRouter vuex
  • 在Windows上用Visual Studio编译OpenCV
  • 详解2024年最值得推荐的5款CRM软件:如何选择适合企业需求的CRM系统?
  • 2024靠谱的网站建设公司推荐
  • 第一天:Java基础与环境搭建
  • 动画魔法秀:JavaScript前端动画实战指南
  • 实训日记day26
  • 自定义实现一个 Redis 客户端
  • sql注入——sqlilabs16-26
  • 数据加载工具pg_bulkload插件的介绍
  • Windows禁止应用联网
  • zabbix邮件告警配置
  • 代码随想录算法训练营第 35 天 | LeetCode 416. 分割等和子集
  • 伪国企是指的什么?
  • Transformer在量化投资中的应用