自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

无言非影的博客

记录自己的学习历程

  • 博客(70)
  • 收藏
  • 关注

原创 vscode如何修改终端的默认配置

摘要(150字) 在VS Code中将默认终端从PowerShell切换为Git Bash的步骤如下:首先点击菜单栏"终端"→"配置终端设置",进入设置页面后搜索"terminal.integrated.defaultProfile.windows"(Mac/Linux用户对应修改名称)。将该选项值改为"Git Bash"即可完成设置。修改后重新打开终端,默认终端即会变为Git Bash,无需每次手动切换。此方法适用于Windo

2025-06-10 09:00:37 275

原创 vite+vue3项目中,单个组件中使用 @use报错

Vite项目中遇到Sass报错"@use规则必须写在其他规则之前",原因是vite.config.ts中的additionalData配置自动在SCSS文件开头注入了@import语句。官方文档明确指出@use规则必须位于所有其他规则之前(除@forward外)。解决方法是将additionalData中的导入方式从@import改为@use。具体操作为修改vite.config.ts配置,将全局变量导入语句调整为@use "@/assets/styles/variables.

2025-06-05 17:55:06 278

原创 【echarts】创建带有标记线和点击事件的折线图

在上面的代码中,为折线图添加了一个红色标记线,位置设置在 20240101 对应的日期处。通过 markLine 配置项,可以在指定的 X 轴位置添加竖直的标记线。

2024-12-22 11:00:03 772

原创 vtie项目中使用到了TailwindCSS,如何打包成一个单独的CSS文件(优化、压缩)

在不依赖 Vite 或其他构建工具的情况下,使用 TailwindCSS CLI 快速生成独立的 CSS 文件是一种简单高效的方法,适合需要纯样式文件的场景。生成的 tailwind.css 文件位于 dist 文件夹中,包含项目中实际使用的 TailwindCSS 样式,经过优化和压缩。就是你引入TailwindCSS的文件。–minify:启用压缩。-i:指定输入文件。-o:指定输出路径。

2024-12-21 10:02:07 575

原创 【已解决】element-plus配置主题色后,sass兼容问题。set-color-mix-level() is...in Dart Sass 3

这些警告是由于 Dart Sass 版本升级后出现的弃用警告,主要有两个方面的问题:全局内置 mix 函数弃用: Dart Sass 建议用 color.mix 替代 mix 函数,以避免弃用问题。Element Plus 的主题文件 var.scss 中使用了 mix,在未来的 Dart Sass 3.0.0 中可能会不兼容。全局变量声明的弃用: Sass 即将不再允许使用!global 在局部作用域中声明新变量。解决方法是声明变量 $B 在全局作用域中初始化(例如 $B: null;

2024-11-02 12:11:54 2822 1

原创 【echarts】Y轴如何显示最大值和最小值(包含拖拽滚动的时候),通过设置xAxis.axisLabel.showMinLabel和showMaxLabel解决

【echarts】Y轴如何显示最大值和最小值(包含拖拽滚动的时候),通过设置xAxis.axisLabel.showMinLabel和showMaxLabel解决

2024-07-26 17:26:46 1037

原创 【echarts】中如何设置曲线展示最新值、最大值、最小值

如何设置曲线展示最新值、最大值、最小值

2024-07-25 14:17:30 1843

原创 【echarts】存在左右Y轴,多个图例切换时,图宽度会缩短(没有右轴,图宽度正常。 高亮右轴,图宽度会变窄。)- 已解决

没有右轴,图宽度正常。 高亮右轴,图宽度会变窄。

2024-07-19 14:39:02 530

原创 【SOLID原则前端中的应用】接口隔离原则(Interface Segregation Principle,ISP)- vue3示例

按照接口隔离原则,将这个需求分解成两个独立的组件:一个负责展示用户信息(UserDisplay.vue),另一个负责编辑用户信息(UserEdit.vue)。换句话说,我们应该避免创建包含过多职责的“胖接口”,而应该创建细粒度的接口,使得每个接口只包含客户端实际需要的方法。这样做不仅使组件更加简洁、易于理解和测试,还可以在需要时更容易地对组件进行重用和维护。通过这种方式,确保每个组件都有明确的职责,避免创建包含过多职责的“胖组件”。在Vue 3中,这可以通过将组件的职责分解成更小的、功能单一的组件来实现。

2024-07-05 09:01:09 583

原创 【js正则】去除文本中的a标签及其内容

场景:有时候服务端返回的文本中,包含a标签,前端不需要展示。

2024-07-04 15:10:30 763

原创 【SOLID原则前端中的应用】里氏替换原则(Liskov Substitution Principle,LSP)- vue3示例

上面的示例中,首先创建了一个通用输入组件BaseInput,它可以接受任何类型的输入。然后,创建了一个电子邮件输入组件EmailInput,通过扩展BaseInput来专门处理电子邮件输入,并增加了电子邮件格式验证和错误提示功能。EmailInput继承了BaseInput的所有属性和方法,同时增加了对电子邮件格式的验证。如果输入的电子邮件格式不正确,会显示错误提示信息。这样,我们可以在需要电子邮件输入的地方无缝替换BaseInput为EmailInput,而不需要修改其他代码。

2024-07-04 08:59:19 490

原创 【SOLID原则前端中的应用】开闭原则(Open/Closed Principle)- vue3示例

基本通知组件:这个组件是对扩展开放的,对修改关闭的。它提供了一个基础的通知样式,并通过type属性来控制不同类型的通知样式。特定类型的通知组件和:这些组件通过扩展来实现特定类型的通知,而不需要修改的代码。我们使用了插槽(slots)来传递内容,从而实现灵活的内容插入。通过这种方式,我们可以在不修改已有代码的情况下,通过创建新的组件来扩展功能,完全遵循了开闭原则。这不仅使代码更加稳定和可维护,还提升了代码的可扩展性。

2024-07-03 09:35:48 499

原创 【SOLID原则前端中的应用】定义及单一职责原则(Single Responsibility Principle,SRP)- vue3示例

单一职责原则(Single Responsibility Principle)开闭原则(Open/Closed Principle)里氏替换原则(Liskov Substitution Principle)接口隔离原则(Interface Segregation Principle)依赖倒置原则(Dependency Inversion Principle)只负责展示用户的信息,不关心数据是如何获取的。负责获取用户数据,并将数据传递给进行展示。

2024-07-03 09:35:30 826 1

原创 【echarts】拖拽滑块dataZoom-slider自定义样式,简单适配移动端

拖拽滑块dataZoom-slider自定义样式,简单适配移动端

2024-07-02 10:56:50 2127

原创 【echarts】如何关闭dataZoom-silder 组件中数据阴影(缩略图、数据走势图)

echarts开启 “滑动条型数据区域缩放组件(dataZoomInside)”后,默认会显示数据的走势图。但有时候我们并不需要。

2024-07-01 13:14:09 642

原创 【已解决】文本无法复制问题(设置了 user-select 或 引入了better-scroll插件导致的)

文本无法复制问题(设置了 user-select 或 引入了better-scroll插件导致的)

2024-06-28 15:04:59 649

原创 【笔记】echarts图表的缩放和鼠标滚动冲突的处理解决方案

解决方案不是很好,来源于github的issue,官方提供了,组合键触发缩放的功能。

2024-06-25 11:21:59 911 1

原创 【css】创建一个带有上矩形和下倒三角角标

【css】创建一个带有上矩形和下倒三角角标。

2024-06-18 16:57:24 680

原创 【已解决】better-scroll在PC端如何开启鼠标滚动以及如何始终显示滚动条

需要安装插件 mouse-wheel 和 scrollbar

2024-06-17 18:01:15 1046

原创 vue3中实现点击ctrl+enter换行,enter发送

【代码】vue3中实现点击ctrl+enter换行,enter发送。

2024-06-11 15:16:06 967 1

原创 【echarts】如何制作,横坐标每个日期点如何对应一条竖线的图,以及 markline设置后不生效问题

每一个日期,对应一条竖线展示。

2024-06-07 11:23:28 872

原创 Anaconda创建python环境默认C盘,如何修改路径

使用 Anaconda创建python环境,默认在C盘。如何修改到别的路径呢?base环境是安装 Anaconda是安装的默认环境,目录是D盘。但是wuyanenv环境是自己创建的环境,没有配置目录,导致默认到了C盘。

2024-06-02 17:23:06 4535 2

原创 PyCharm如何更换解析器为Anaconda,如何自己切换python环境

PyCharm如何更换解析器为Anaconda,如何自己切换python环境

2024-06-02 16:56:11 1593 1

原创 【python学习】安装Anaconda后,如何进行环境管理(命令行操作及图形化操作Anaconda Navigator)及包管理

打开命令行(Windows上的命令提示符或Mac/Linux上的终端)。目前只有一个 base环境,就是安装 anaconda的时候选择的。其中newname是新的环境名,oldname是旧的环境名。如果不再需要某个环境,可以删除它。此时,之前的 myenv 环境已经被删除了。直接重命名conda环境的选项并不提供。其中,myenv是你想命名的环境名称。这里的myenv是你要删除的环境。wuyanenv,自己创建的环境。直接点击环境名称,可以自动切换环境。此时,会多出来一个刚创建的环境。

2024-06-02 14:18:29 1506

原创 【python学习】Anaconda的介绍、下载及conda和pip换源方式(切换到国内镜像源)

Anaconda 是一个专为数据科学和机器学习预装了多种库的Python发行版。提供了包管理与环境管理的功能解决了多个版本python并存的问题解决了第三方包安装问题。

2024-06-02 13:14:22 2314 1

原创 解决移动端使用el-drawer侧边栏展开时触摸滚动的问题

通过 el-drawer 控件实现了底部栏的展示和隐藏,但在移动设备上侧边栏展开时仍然可以通过触摸滑动页面内容,导致用户体验不佳,产生意外的滚动行为。

2024-05-29 10:07:57 466 1

原创 TS中,PropType导入报错is a type and must be imported using a type-only import...

将作为一个类型导入,而不是一个普通的导入。需要使用类型导入语法来导入。

2024-04-08 15:24:27 2733

原创 dependencies 和 devDependencies 的区别,安装包的时候,怎么做判断

在 Vue 项目中,正确管理依赖是保持项目结构清晰和提高构建效率的关键。本文将通过一个常见问题 —— 错误地将 sass 放在 dependencies 而非 devDependencies —— 来探讨如何优化依赖管理,并提供简单有效的解决方案。

2024-04-05 12:32:41 1352

原创 带有 g 标志的正则表达式对象在匹配时会保持状态,记住上一次匹配的位置

JavaScript 正则表达式全局标志 g 的使用中可能遇到的问题,以及如何通过创建新的正则表达式实例来避免这些问题。

2024-04-03 11:11:10 239

原创 NVIDIA A100 NVLink 和 NVIDIA A100 PCIe的区别?

NVIDIA A100 NVLink 和 NVIDIA A100 PCIe 是两种不同连接方式的 NVIDIA A100 GPU。如果需要最高的性能和数据传输速度,NVLink 版本可能是更好的选择。

2024-03-26 17:56:24 4114

原创 ECMAScript、JavaScript和Node.js的区别与联系

ECMAScript是一个标准,JavaScript是这个标准的一种实现,并且在此基础上进行了扩展。Node.js则是一个运行时环境,它让JavaScript能够在服务器端运行。

2024-03-25 09:08:10 716

原创 前端视角如何理解“时间复杂度O(n)”

时间复杂度是O(n)意味着算法的执行时间会随着输入数据量的增加而线性增加。

2024-03-21 13:00:00 724 1

原创 掌握JavaScript中的call、apply和bind方法

本文探讨了JavaScript中的call、apply和bind方法,阐述了它们在改变函数this指向和参数传递方面的用法和区别。通过具体示例,解释了如何在不同场景下正确使用这些方法,特别是bind方法在结合定时器setTimeout时的应用,帮助读者更好地理解和运用这些重要的JavaScript特性。

2024-03-21 09:00:00 296

原创 如何理解JavaScript中的函数调用和this指向

本文详细解析了JavaScript中函数的五种调用方式及其对this指向的影响,包括直接调用、方法调用、构造函数调用、apply/call/bind调用以及箭头函数,旨在帮助读者深入理解和掌握this在不同场景下的行为。

2024-03-20 14:50:50 779

原创 全球首位AI程序员诞生,将会对程序员的影响有多大?

AI程序员的出现可能会导致一些重复性和低技能的编程工作减少,但同时也会创造新的机会。程序员可以将更多精力投入到创新和复杂问题的解决上,而不是日常的编码工作。为了应对AI时代的挑战和机遇,程序员需要不断提升自己的技能和知识。学习AI相关知识、掌握新的编程语言和工具,以及培养创新和解决问题的能力将变得越来越重要。AI很难理解复杂的人类需求和情感,这在软件开发中是非常重要的。此外,AI还不能完全替代人类的创造性思维和解决问题的能力。此外,AI程序员可以不断学习和适应新技术,减轻人类程序员的学习负担。

2024-03-20 10:34:51 270

原创 JavaScript中的arguments对象及其转换方法

在JavaScript中,arguments是一个类数组对象,用于处理函数中的可变数量参数。虽然有用,但它不是真正的数组,缺少数组方法。可以通过Array.prototype.slice.call()、Array.from()或扩展运算符将其转换为真正的数组。此外,ES6引入的剩余参数语法提供了更简洁的处理可变参数的方式。

2024-03-20 10:09:20 315

原创 JavaScript中a++和++a的区别是什么?

++a和a++

2024-03-19 17:17:25 739

原创 【CSS】overflow中scroll和hidden的区别是什么?

它们的主要区别在于当内容超出指定容器的尺寸时,它们如何显示或隐藏内容。如果你有一个包含大量文本或图片的元素,并且希望用户能够滚动查看所有内容,那么是合适的选择。如果你只想显示元素内部的部分内容,并且不希望用户知道还有更多内容,那么是更好的选择。

2024-03-19 17:00:00 712

原创 JavaScript DOM编程艺术(第2版)中提到的displayAbbreviations是什么?

这个函数的目的是为了提高网页的可访问性,特别是对于那些屏幕阅读器用户来说,它可以提供更清晰的缩略语解释。同时,它也可以作为页面上一个独立的缩略语列表,方便用户查找和理解这些缩略语。是一个JavaScript函数,它的作用是在网页上动态显示所有缩略语(abbreviations)的定义。这个函数通常会遍历文档中的所有。标签,这些标签通常用于表示缩略语,并且它们有一个。属性来存储缩略语的全称或解释。

2024-03-19 09:07:47 346

原创 HTML、XHTML和HTML5 的区别是什么?

HTML(HyperText Markup Language)、XHTML(eXtensible HyperText Markup Language)和HTML5是网页设计和互联网标准中使用的三种不同的标记语言。

2024-03-19 08:39:58 1440

空空如也

空空如也

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

TA关注的人

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