自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(91)
  • 收藏
  • 关注

原创 vue上传Excel文件并直接点击文件列表进行预览

本文主要内容:用elementui的Upload 组件上传Excel文件,上传后的列表采用xlsx插件实现点击预览表格内容效果。在项目中可能会有这样的需求,有很多种方法实现。但是不想要跳转外部地址,所以用了xlsx插件来解析表格,并展示表格内容。

2024-07-24 16:25:14 3475

原创 对轮询的理解

轮询是前端定时向服务器请求数据的常见技术,分为短轮询(固定间隔请求)和长轮询(服务器挂起请求直至数据更新)。实现方式包括基于setInterval的定时器轮询(简单但可能请求堆积)和基于setTimeout的递归轮询(顺序执行,避免堆积)。优点是简单兼容,适合低频更新;缺点是效率低、延迟高且增加服务器负载。相比WebSocket(双向实时)和SSE(单向实时),轮询更适合简单场景,但实时性较差。根据需求选择合适方案即可。

2025-09-03 20:15:00 556

原创 怎么使用 Math.max、Math.min 获取数组中的最值

本文总结了JavaScript中使用Math.max()和Math.min()获取数组最值的多种方法。虽然这两个函数不接受数组参数,但可通过apply()、展开运算符(ES6+)、reduce()或传统循环间接实现。对于大数组,建议使用reduce()或循环以避免堆栈问题。

2025-09-01 17:30:00 534

原创 前端Vue.js面试题(4)

本文摘要:Vue核心概念解析 Vuex原理:采用State、Getter、Mutation、Action、Module管理状态,实现组件间数据共享与响应式更新。 虚拟DOM机制:通过JavaScript对象抽象DOM结构,配合diff算法实现高效更新,支持跨平台渲染。 Vue3核心升级: 响应式系统改用Proxy API 引入Composition API 优化虚拟DOM算法 增强TypeScript支持 关键优化技术: key属性原理:精准识别节点变化 v-cloak解决初始化闪屏 extend实现...

2025-07-15 17:00:00 1000

原创 前端Vue.js面试题(3)

本文介绍了Vue的核心概念与特性:阐述了v-model原理;详解了Vue生命周期,包括子父组件执行顺序及created与mounted区别;指出推荐在created或mounted发起请求;介绍了keep-alive专属生命周期;列举了组件间通信方式;说明了Vue-Router懒加载实现方法,对比了history与hash模式区别,解释了SPA应用提供hash路由的好处;区分了route与router;介绍了动态路由定义及参数获取;对比了Vue-router跳转与...

2025-07-15 16:00:00 924

原创 前端Vue.js面试题(2)

本文整理了15个Vue.js常见面试问题及答案摘要: data属性必须是函数以防止组件数据污染 keep-alive用于组件缓存,包含activated/deactivated钩子 $nextTick原理是利用JS事件循环机制实现异步DOM更新 SPA与MPA的核心区别在于资源加载和页面刷新方式 template编译过程:解析→优化AST→生成render函数→渲染VDOM mixin实现代码复用,需注意同名选项合并规则 自定义指令用于DOM操作、表单验证等场景 依赖收集......

2025-07-11 14:36:32 1090

原创 前端Vue.js面试题(1)

本文总结了Vue.js的核心概念和常见问题,主要内容包括: Vue基本原理:响应式系统、组件化、虚拟DOM、模板编译等核心机制。 双向绑定原理:通过数据劫持和发布-订阅模式实现,依赖Object.defineProperty。 响应式缺陷:Vue2中Object.defineProperty无法检测新增属性,需使用Vue.set。 架构模式对比:MVC、MVP与MVVM的区别及MVVM的优缺点。 常用指令与功能: computed(缓存依赖)与watch(无缓存,支持异步)的区别。 slot插槽的三种类型及

2025-07-11 14:36:23 762

原创 前端JavaScript面试题(3)

DOM是文档对象模型,用于操作HTML/XML内容;BOM是浏览器对象模型,控制浏览器行为。常见DOM操作包括节点创建、获取、更新和删除。 AJAX通过XMLHttpRequest实现异步数据交互,与fetch(基于Promise)和axios(功能更全面)形成对比。ES6模块与CommonJS模块在加载时机和输出类型上有本质差异。 重要特性包括:变量提升(声明前置)、尾调用优化、严格模式("use strict")的严格检查。遍历方法中

2025-06-20 08:00:00 949

原创 前端JavaScript面试题(4)

JavaScript核心知识点摘要(150字版) DOM是文档对象模型,用于操作HTML/XML内容;BOM是浏览器对象模型,控制浏览器行为。常见DOM操作包括节点创建、获取、更新和删除。 AJAX通过XMLHttpRequest实现异步数据交互,与fetch(基于Promise)和axios(功能更全面)形成对比。ES6模块与CommonJS模块在加载时机和输出类型上有本质差异。 重要特性包括:变量提升(声明前置)、尾调用优化、严格模式("use strict")的严格检查。遍历方法中

2025-06-20 08:00:00 619

原创 前端JavaScript面试题(2)

本文摘要: ES6核心知识点解析,涵盖箭头函数与普通函数的区别(this指向、构造限制等)、扩展运算符的应用(对象/数组操作)、解构赋值(对象/数组模式匹配)、Proxy代理机制(数据验证/监控)、rest参数特性。对比Map与Object的区别(键类型/顺序/性能)及Map与WeakMap差异(弱引用)。列举JS内置对象(Array/Date/Math等)及正则表达式使用场景。详解脚本延迟加载方式(defer/async)、类数组对象转换方法(arguments处理)、数组原生方法(push/map/fi

2025-06-13 17:00:00 1101

原创 前端Javascript面试题(1)

本文总结了JavaScript的核心数据类型与常见问题,包括数据类型分类与检测方法、null与undefined的区别、instanceof原理等。重点分析了0.1+0.2精度问题、类型转换机制、Object.is()与比较运算符的区别。同时详解了包装类型、BigInt提案背景、深浅拷贝区别、判断空对象方法,以及const/let/var差异、箭头函数限制和new操作符实现流程。这些内容是JavaScript开发者必须掌握的基础知识,有助于解决实际开发中的类型相关问题和性能优化。

2025-06-13 15:30:00 1616

原创 全局事件总线EventBus的用法

全局事件总线 EventBus 在前端开发中是一种用于实现组件间通信的机制,适用于兄弟组件或跨层级组件间的数据传递。 使用场景——兄弟组件通信:当两个组件没有直接的父子关系时,可以通过 EventBus 进行通信。跨层级组件通信:当组件层级较深,使用 props 和事件冒泡不方便时,EventBus 可以简化通信。全局状态管理:对于简单的应用,EventBus 可以用于管理全局状态,但对于复杂应用,建议使用 Vuex 或 Pinia 等状态管理库。

2025-04-30 19:30:00 584

原创 前端-介绍一个好用的波浪背景生成器

介绍一个好用的波浪背景生成器Svg Wave,它是一款轻量级、免费且功能强大的在线工具,专为UI设计师或网页开发者设计,用于快速生成可定制的矢量SVG波浪背景,生成SVG代码也可直接插入并运用于前端项目中。

2025-04-27 17:00:00 1446

原创 el-table表格默认的“暂无数据”修改

在 Element UI 中,el-table 组件提供了一个默认的“暂无数据”提示,当表格没有数据时显示。如果你想自定义这个提示,可以通过 empty插槽来实现。<template slot="empty"></template>

2025-04-25 21:00:00 740

原创 使用浏览器的Clipboard API实现前端复制copy功能

在前端开发中,复制文本到剪贴板的功能通常使用浏览器的 Clipboard API 实现。比如方法。以下是一个简单的案例,展示如何使用 Clipboard API 实现复制文本的功能。

2025-04-25 20:45:00 514

原创 ElementUi的Dropdown下拉菜单的详细介绍及使用

Dropdown是 ElementUI 中用于创建下拉菜单项的一个组件,通常包裹在组件中使用。以下从功能特性(一些属性及方法)、使用和高级功能(高亮显示,滚动,额外传参数)三个方面进行详细介绍。

2025-04-25 19:15:00 1716

原创 ElementUi的tabs样式太难修改,自定义tabs标签页

ElementUi的Tabs组件在某些情况下难以是自己想要的样式,这时候自定义 Tabs 会是一个更好的选择,可以根据自己想要而设置样式。

2025-04-25 17:00:00 978

原创 前端数据存储工具大比拼-Vuex、Pinia、Redux

Vuex、Pinia和Redux都是状态管理库,分别适用于Vue.js(特别是中小型项目)、Vue 3(提供简洁的状态管理)以及跨框架的大型应用(遵循单向数据流和纯函数原则)。Vuex API丰富但复杂,Pinia作为Vuex的升级版更简洁且与Vue 3紧密结合,而Redux则较为抽象但提供了强大的工具支持。

2025-04-03 15:04:34 977

原创 前端开发的px,rpx,rem等常见单位

精确控制:如果需要精确控制元素的尺寸,如边框、图标等,px是合适的选择。响应式设计:对于需要支持多种屏幕尺寸和设备的场景,rpx和rem都是很好的选择。rpx更适合小程序和跨平台应用开发,而rem则广泛应用于Web端的响应式设计中。兼容性:虽然现代浏览器广泛支持rem单位,但在某些旧版浏览器中可能需要使用px作为备选单位。单位定义特点应用px像素单位,表示屏幕上的一个像素点绝对单位,不会随视口变化而变化通常用于边框、阴影等具有固定尺寸的元素rpx。

2025-03-23 13:31:12 1263

原创 前端存储Cookie,使用JavaScript 或js-cookie

在前端登录时,存储 Cookie 是一种常见的做法,用于在用户的浏览器中保存会话信息(如认证令牌、用户ID等)。以下是如何在前端存储 Cookie 的基本步骤和示例代码。使用JavaScript 或js-cookie......

2025-03-23 13:06:04 1646

原创 HTML表格-掌握表格标签与属性

HTML表格由<table>标签定义,内部包含多个行(<tr>)、单元格(<td>或<th>)。<th>标签通常用于定义表头单元格,而<td>标签则用于定义标准单元格。HTML属性虽然提供了基本的样式控制,但高版本废弃了很多东西。开发时更推荐使用CSS来美化和布局表格。CSS提供了更丰富的样式选项,如边框样式、背景颜色、字体样式、内外边距等。

2025-01-22 19:30:00 1019

原创 JavaScript正则表达式解析:模式、方法与实战案例

什么是正则表达式。模式,即正则表达式的语法和规则;方法,即如何在JavaScript中使用正则表达式进行匹配、搜索、替换等操作;一些实战案例,通过具体示例展示正则表达式的应用;介绍两个线上正则表达式测试和生成器工具。一、什么是正则表达式‌JavaScript正则表达式‌是一种用于匹配字符串中字符组合的模式。通过一种简洁的语法,可以执行复杂的字符串搜索、替换等操作。一、创建正则表达式使用双斜杠包裹一个匹配模式,/正则表达式主体/修饰符(可选)。二、......

2025-01-20 18:45:00 1252

原创 JavaScript的数据类型及检测方式

JavaScript 中的数据类型主要分为两大类:原始数据类型(也称基本数据类型)和引用数据类型。Undefined未定义:类型只有一个值,在使用var声明变量,但未对其加以初始化时,这个变量值就是undefined。Null空对象:只有一个值的数据类型,其特殊值就是null。typeof运算符是用于检测变量数据类型的常用方法。instanceof运算符用于检测一个对象是否是另一个构造函数的实例......

2025-01-03 19:00:00 1266

原创 JavaScript中Map与Object的区别

Map和Object是用于存储键值对数据的两种不同的数据结构(Map是ES6新增的数据结构)。构造方式不同:Map只能通过构造函数new Map()创建;Object可以通过字面量、等方式创建。键的类型不同:Map的键可以是任意类型,包括对象、数组、函数等;Object的键只能是字符串或者Symbol,其他类型的键会被转换为字符串......

2024-12-31 16:00:00 1413 2

原创 vue项目网页图标修改

在Vue项目中修改网页图标(favicon)是一个相对简单的过程。将你的图标文件放入public文件夹中,在替换掉index.html里面的原图标就可以了。

2024-12-26 15:11:16 1417

原创 Visual Studio光标变为方块状换回方法

Visual Studio光标变为方块状,输入内容会被覆盖掉,挺影响效率。或者Visual Studio光标变为方块状,不影响输入内容。习惯了线光标,就是想换回来, Visual Studio Code 设置光标样式成功换回。

2024-12-26 14:21:04 15654 7

原创 JS面向对象及继承

创建对象的方法及对象继承的方式。像组合继承不共享引用类型属性,它结合原型链继承和构造函数继承的优点,通过在子构造函数中调用父构造函数来继承属性,同时将子构造函数的原型设置为父构造函数的实例......

2024-12-20 16:00:00 820

原创 了解垃圾回收机制与内存泄漏

前端的垃圾回收机制主要指的是浏览器中的JavaScript引擎所实现的内存管理机制。这种机制自动回收不再使用的内存空间,以避免内存泄漏和内存溢出等问题。以下是JavaScript垃圾回收机制的详细介绍。

2024-12-17 19:00:00 1225

原创 npm下载依赖相关命令

npm(Node Package Manager)是Node.js的包管理工具,它提供了大量的命令来管理项目依赖、配置npm环境、发布包等。

2024-12-17 19:00:00 3802

原创 echarts绘制自定义展示排名和数据等信息(数据排名进度条)

通过 ECharts 创建了一个包含多个 y 轴、渐变条形图、背景条形图和散点数据点完成这个效果。xAxis:隐藏 x 轴。yAxis:定义了多个 y 轴,分别用于:显示地区名称、显示排序(数字)等series:定义了多个图表的数据系列,包括条形图系列,用于显示每个地区的数据条。另一个条形图系列,用作进度条的背景......

2024-12-13 16:00:00 2125

原创 elementui进度条Progress组件

elementui进度条Progress组件

2024-12-13 15:00:04 883

原创 echarts自定义仪表盘样式及一些属性了解

本文主要对Echarts自定义仪表盘及其一些属性的详细介绍。这里自定义仪表盘主要通过对option对象中的series数组和相关属性进行设置来实现。series里面可用于配置仪表盘的数据系列,包括数据值、指针样式、背景颜色等。其中type属性应设置为'gauge',以指明这是一个仪表盘图表。graphic是原生图形元素组件......

2024-12-11 16:00:00 4300

原创 vue项目启动完成时,直接跳转浏览器打开界面的方法

当启动前端项目时,一般不具备自动打开浏览器的功能。可以采用:修改package.json文件或配置vue.config.js文件简单方法实现......

2024-12-11 16:00:00 1655

原创 Echarts使用平面方法绘制三维立体柱状图表

Echarts使用平面方法绘制三维立体柱状图表。使用Echarts的自定义系列custom,使用了三个 polygon 类型的图形元素来绘制立方柱状图的三个面。通过调整坐标点的位置来确定形状。在设置不同的渐变色,就可以实现立体效果。

2024-12-05 16:58:20 5051 10

原创 Nprogress页面加载进度条的使用

Nprogress是一个简单而实用的页面加载进度条工具,它显示的进度是虚假的(即不真实反映页面或接口加载的实际进度),但因其实现简单、性能消耗低且用户体验良好而受开发者使用。以下是对Nprogress的详细介绍和使用方法......

2024-11-13 17:25:29 2186 1

原创 前端-懒加载

懒加载也加延迟加载、按需加载,指在长网页中延迟加载图片数据,是一种较好的网页性能优化的方式。懒加载也加延迟加载、按需加载,指在长网页中延迟加载图片数据,是一种较好的网页性能优化的方式。懒加载的特点:减少了无用资源的加载;提升用户体验;防止加载过多图片而影响其他资源文件的加载......

2024-11-08 14:57:18 2088 1

原创 ElementUI<el-table></el-table>表格中固定列横向滚动条无法拖动解决

当表格有固定列会出现横向滚动条无法拖动问题,尤其是固定列固定在左边且表格没数据的时候。这可能是因为固定区域盖住了横向滚动条,不是视觉上的覆盖,是去拖动时没有触发效果。

2024-10-31 11:11:23 2810 2

原创 从零搭建Vue项目

用nvm安装nodejs,使用vue-cli搭建vue项目并启动......

2024-10-23 11:06:30 1029

原创 前端接收后端传递的表格文件流,通过a标签下载excel文件

从后端获取表格等文件流并在前端触发下载的功能是个常用功能,方法很多,这里我们采用Blob 对象和标签来实现文件下载。

2024-10-14 17:30:31 1034

原创 一文详细了解React.createClass和extends React.Component的区别

在React中,定义组件的两种方式分别是使用React.createClass方法和使用ES6的class语法通过extends React.Component。propTypes在两种组件定义方式中都是作为静态属性来定义的,但导入方式有所不同。在React.createClass中直接从React导入,而在extends Component中从prop-types包导入。getDefaultProps在React.createClass中是一个方法......

2024-10-14 12:24:37 671

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除