自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 前端项目——实现qq音乐网页版本(样式+获取数据+播放)

这是一个完整的项目实现,内容包括网页排版,利用js css实现一些动态特效,特在此记录项目实现过程中的核心思想,以及难点的解决方法和在此项目中学到的新知识。首先看一下该项目的官网效果(静态)可以看到该网页的实现我们可以将其分为9个部分,即导航栏、歌单推荐栏、新歌首发、精彩推荐、新碟首发、排行榜、MV、页脚和一个固定在页面右侧的窗口...

2021-03-11 15:26:55 11670 9

原创 学习笔记——栈、队列的实现(python+链表)

python中没有指针,所以通过链表实现栈时,使用静态链表来模拟真正链表。栈的原理其实很简单,无非就是“先进后出”也就是说在入栈和出栈时,都是对栈顶元素进行操作,那说到这里就已经很清晰了,定义栈的”指针“时,我们只需要定义一个栈顶指针就可以完成入栈以及出栈的操作。(入栈方向和出栈方向相反)代码实现过程:1.在用链表进行表示时,首先要声明一个方法,为它开创一个节点空间。2.定义top”指针“。(为入栈出栈做准备)3.入栈:判断是否为空栈,若为空栈,直接让top指针移动到新元素n即可。需要注意的时,

2021-01-06 09:18:56 388 3

原创 一文带你吃透二分查找法

二分法的原理本身是很简单的,但是在实际场景中却总是有着各种各样的边界问题,此文章为y哥学习笔记。

2024-07-05 10:29:47 567

原创 超实用撰写攻略——技术文章如何破局?

上述的内容都是在写作中锦上添花的部分,想要写出一片好的文章还是需要笔者平时不断的积累,并养成积极思考探索的习惯。因为只有过硬的内容,再结合这些技巧,才会创作出来真正的佳文。

2024-07-04 16:52:17 961

原创 js实现一个数据结构——栈

栈的概念就不再赘述,无可厚非的先进后出,而JS又是高级语言,数组中的方法十分丰富,已经自带了push pop方法进行入栈出栈的操作。

2024-06-12 15:34:36 536

原创 前端面试题——只触发一次点击事件

指定dom对象 给这个dom对象绑定一个click事件 无论点击多少次只有第一次触发事件回调callback。

2024-06-09 16:10:26 163 1

原创 前端面试系列——JS数据类型有哪些?

引用数据类型:由于引用数据类型是栈存地址,堆存值,并且js是无妨直接访问堆内存中的对象,所以它的拷贝只是将新变量的栈中所存地址指向已用的堆内存,拷贝后彼此之间会有影响。基本数据类型:它并不是对象,所以无法直接为其自定义属性方法,但js中有自动解包封包的机制,所以它可以调用一些属性方法,如可对数字类型的变量调用tostring(实际上是将它包装成为包装类)。引用数据类型:采用的是栈存储地址,堆存储值,系统是对其动态分配内存,所以不会自动释放,尽量每次使用后将其设置为null,减少内存消耗。

2024-06-05 11:21:26 543

原创 我的变量怎么又undefined了?——JS中的作用域与作用域链

在看本文前默认你已经了解AO、GO是什么以及生成机制,如不懂可以先看我总结的JS中的预编译(AO、GO详解)每个函数都有一个作用域链属性[[scope]]当函数被定义时,在里加入其当前环境,当函数被执行时再加入自己的AO,函数执行完,自己的AO将会被自动销毁。

2024-06-04 16:22:59 558

原创 经典JS面试题——数组去重

基本思想:filter方法是会对数组中每个元素去调用函数方法,true就保存下来,所以新声明一个数组去保存;与includes()原理相同,不过是利用reduce方法遍历数组+返回结果,代码更简洁。基本思想:直接利用ES6中set方法去重,不过这样去重后返回的是一个集合形,需要再转换。基本思想:利用includes方法去判断新声明的数组中是否已存在待操作的元素。基本思想:遍历数组,两层for循环比较元素是否相等,相等就删除重复元素。基本思想:同上,不过是利用indexOf去判断。

2024-06-03 16:01:19 444

原创 年中汇报季?——一文教会你如何进行数据分析

数据分析报告通常可以分为三类:日常分析报告、专题型分析报告和综合性分析报告。前两者是以数据+结论+建议的格式去撰写,综合性分析报告则是:行业环境调研(竞品类产品数据分析)+自身产品数据综合性分析+结论+建议。

2024-06-01 14:42:21 1138

原创 前端面试手撕系列——深浅拷贝

面试经典必会题 深浅拷贝怎么实现?

2024-05-31 14:29:52 318

原创 小白必看的入门级TS学习教程

本文介绍ts中的基础知识

2024-05-29 14:16:05 895

原创 ts+面向对象编程怎么学——一个实践贪吃蛇游戏带你了解

该项目利用ts语言中的面向对象的思想完成,从而实现一个简单的应用 带你体验ts的魅力~

2024-05-28 14:57:51 558

原创 前端笔试面试常考题——this指向问题

对于学习来说,不仅要知其然还要知其所以然,this这个关键字,最初一看到它是会让人发懵的,这个this究竟指什么,接下来就让我们一起来探讨一下有关this的种种这个问题想明白之后或许this就不在那么恐怖了,举一个生活中的例子:怎么样?是不是感觉有些赘余,没有必要一直提小红。这样就好一些了,对吧。那么在js中也是如此,this指代会让我们的格式看起来更加整洁,写起来也更加方便,但问题也就随之产生了,我们在调用对象的方法属性时,可能会比较有比较复杂的层层调用,那this究竟指向谁?

2024-05-26 13:51:37 355

原创 一文带你了解call、apply和bind——强制改变this方法

本文不再说明他们的具体用法,直接说明他们的内部实现原理。1.给想要绑定的对象设置一个属性,且指向this(即需要调用的对象)2.通过该对象调用该函数3.结束调用后删除该属性。

2024-05-25 16:39:14 824

原创 前端进阶必看——手把手带你实现一个Redux

从底层自己实现一个Redux。

2024-05-24 14:32:05 811

原创 前端入门级项目——带你实现一个全栈博客项目(Ejs+Node.js+MongoDB)

前台:① get ’ /’ 提供首页② get ‘/p’ 提供某篇文章的描述③ post ’/submitComment‘ 表单提交文章评论④get ‘/message’获取留言板⑤post‘/submitMessage’表单提交留言内容后台:①get ‘/admin/’ 后台管理首页②get’/admin/login‘ 管理员登录界面③post’/admin/login‘ 登录接口④get ‘/admin/getComment’ 获取评论。

2024-05-23 10:36:12 679

原创 夹层原理——纯CSS实现一个五环展示

但我们仔细观察,五环的实现其实并没有那么简单,由于每个环的位置关系,我们需要设置两层——(利用z-index调整,最后实现环之间的位置)

2024-05-22 19:39:30 131

原创 前端面试必考——原型及原型链(涵实例+话术)

原型:所有的引用类型都有一个__proto__(隐式原型)属性,它是一个普通的对象、所有的函数都有一个prototype属性(显式原型),是一个普通的对象。所有引用类型的__proto__指向它的构造函数的prototype属性。

2024-05-22 11:24:14 1158

原创 全栈开发入门级保姆教程——通讯录(mongodb+express+bootstrap+jQuery)

1.就从简单的模块引用说起吧,首先我们要引入express模块,直接开启我们的终端(ctrl+`),键入npm init(-y)生成我们的package.json 和package-lock.js文件,接下来npm install express --save 这里要注意的是–save不要忘记写(方便日后项目的迁移),由于我们要处理post请求,所以我们还需要引入一个body-parser模块,指令如下:npm install body-parser --save。遇到的坑:利用id操作数据时一定要!

2024-05-21 19:41:48 757

原创 万字长文——全自动可视化骨架屏生成工具流程全记录!

目前的App端开发大多采用H5+原生相结合,这种开发方式可在保证加载速度和页面稳定性的基础上最大化的降低开发成本, 因此xxxApp应用了此种开发模式。在App内所嵌套的H5页面相比于普通HTML页面,页面首屏渲染速度会更慢,因为对于App内嵌的H5页面,除本身的页面资源加载(HTML+CSS+JS等)还要进行webView的加载,也因此比起普通HTML页面,APP内嵌H5页面对于首屏渲染优化要求更高,所以前端更要尽可能的去进行首屏渲染优化,才能给用户一个流畅的使用感受。

2024-05-18 17:41:40 1173 1

原创 万字长文——全自动可视化骨架屏生成工具流程全记录!

目前的App端开发大多采用H5+原生相结合,这种开发方式可在保证加载速度和页面稳定性的基础上最大化的降低开发成本, 因此xxxApp应用了此种开发模式。在App内所嵌套的H5页面相比于普通HTML页面,页面首屏渲染速度会更慢,因为对于App内嵌的H5页面,除本身的页面资源加载(HTML+CSS+JS等)还要进行webView的加载,也因此比起普通HTML页面,APP内嵌H5页面对于首屏渲染优化要求更高,所以前端更要尽可能的去进行首屏渲染优化,才能给用户一个流畅的使用感受。

2024-05-18 17:37:53 1069

原创 万字长文——前端开发必看的KeepAlive原理详解

本文将从原理+应用+源码(Vue2和Vue3)的角度全面介绍 组件,全文共计16000字,阅读时间大概30min+,建议码住在看,相信看完本文的你会对该组件有一更深刻的认识。

2024-05-10 14:22:38 1555

原创 利用blob对象于浏览器保存图片到本地

使用 URL.createObjectURL(data) 方法将二进制数据转换为临时 URL,并将其存储在 url 变量中。最后,创建一个新的 MouseEvent 对象,并将其存储在 event 变量中。使用 try 和 catch 处理错误。下载图片:使用 fetch(imageUrl) 下载图片,并将响应存储在 response 变量中。可以通过 URL 表示:可以使用 URL.createObjectURL() 方法为 Blob 对象创建一个 URL,以便在浏览器中引用和访问 Blob 对象。

2024-04-26 16:37:52 772

原创 topLevelAwait是什么?

正常情况下,对于异步的await函数,我们需要搭配关键字async使用,对于模块级别处理异步操作的能力就会有一定限制。topLevelAwait旨在解决该问题。

2024-04-18 15:11:15 527

原创 记录el-table的表格合并问题

可以看到该属性默认返回一个函数,函数有四个参数,分别表示横行数据、纵行数据、横行索引和纵行索引,然后我们实操一下,为该参数绑定一个函数rowSpanRulesHandler,在这之前声明一个数组,数组各项表示table各列,如果相同,则增加 count,并继续循环。首先,初始化 count(计数器)和 start(起始位置)变量,以及一个名为 multCompare 的布尔值,用于在循环中判断是否需要继续合并。否则,返回一个数组,包含 count(合并列的跨度)和 1(合并行的跨度)。

2024-03-30 17:43:43 519

原创 小程序不识别\n换行符解决方案

在css中设置: white-space: pre-wrap;

2024-03-13 11:16:51 612

原创 小程序内嵌web-view实现路由切换到同级页面无效的解决方案

如果与当web-view不处于同一层级目录下,直接使用 uni.navigateTo({url:‘xxxx’});即可实现跳转,如果处于同级目录下需要使用 uni.switchTab({url:‘xxxx’}),并且声明url时候需要注意是…

2024-03-13 11:15:41 512

原创 前端必备技能!一文读懂如何调试node_module内源码

在项目开发中发现有一个bug问题可能原因出现在node_module内的包问题,但是发现直接调试该包源码是无法正常console的,这对于开发定位问题来说十分不友好。本文仅介绍如何定位npm包的问题和调试方法,但是要注意修改后再npm i 又会覆盖掉修改,如何避免这个问题网上有相关文章,笔者暂未实践。

2023-12-06 10:52:04 1716

原创 微信小程序uni.chooseImage()无效解决方案

微信小程序在上传图片时可以通过 uni.chooseImage()方案进行上传,这里不再赘述具体参数。一直项目都可以正常使用,突然有一天发现无法使用该方法,于是查了一下,发现是用户隐私协议问题。故记录一下解决方案。大师。

2023-12-04 14:35:06 2806 7

原创 万字长文——这次彻底了解LLM大语言模型

在深入学习LLM(大型语言模型)之前,了解NLP(自然语言处理)的基本原理对于应用LLM至关重要。虽然在具体的LLM训练和应用中,NLP相关概念的内容应用可能有限,但这并不削弱了解NLP基础知识的重要性。这种基础知识有助于更好地理解LLM的训练方法、功能以及其在各种领域的潜在应用。因此,在学习LLM之前,建议先掌握NLP的基础原理,以便更全面地掌握这一领域的知识,并能够更好地应用它们。感兴趣的同学可以移步AI模型训练——入门篇。

2023-11-30 10:39:22 1201

原创 Cannot read properties of null bug解决方法

定位到el-dialog组件,最初认为是dialog中table依赖的接口数据返回有问题,后发现不是,于是定位到组件本身。看到网上有说是因为dialog销毁失败的 要添加v-if 或者 destory-on-close设置为true,但是对于我们的项目都没用…后来发现 是因为触发dialog的 span标签,用了style设置样式,把行间样式改成了scss样式就修复了 有点玄学。本地运行没有任何错误,在生产环境中,当点击按钮,展示el-dialog时第一次正常,关闭时报错。

2023-09-14 14:54:54 748

原创 element-plus中的el-table如何动态合并行(复制粘贴即可使用 亲测有效!)

但构建函数需要注意的是,这个函数是按照行数去遍历的,比如前 5 行 resource_name相等,那我们在遍历到第一行的时候,就需要返回rowspan=5,colspan=1,接下来函数在此调用,返回的结果会影响第二行,而第二行已经被合并到第一行里了,这时返回rowspan=0,colspan=0即可,第三、四、五行都是一样的返回rowspan=0,colspan=0。现在需要将 prop=desc的这一列,按照resource_name 相等时进行合并。

2023-06-28 19:08:39 1927 3

原创 没有权限merge到源git仓库?一招教你如何解决。

在git上贡献项目的时候,一般步骤是,clone源项目到本地,切出一个新的分支,然后在新分支上开发,最后push到远程,然后提出mr。

2023-05-26 11:45:58 1036

原创 动态table渲染数据如何渲染表格?

【代码】动态table渲染数据如何渲染表格?

2023-04-21 17:19:55 535

原创 el-select数据回填时的处理方案与踩坑解决方法

为需要进行双向数据绑定的组件设定默认值时就是直接对v-model绑定的值赋值。但是对于el- select来说 不仅需要赋值v-model的初值,还需要将对应v-model的el-option所依赖的数据设置好,这样才能解决初始化选择器的问题。

2023-03-09 10:55:08 706

原创 elemenet-plus级联选择器(el-cascader)一级单选 二级三级多选+hover弹窗样式修复+

此时的v-model值为一个数组,数组的第一项则为一级的id,第二项则为二级的id…最近的需求需要实现级联选择器的一级只支持单选,二三级可以支持多选。对于原生的这个组件来说,并没有这个功能,所以需要自己在组件上进行二次封装。

2023-01-05 19:20:01 3353

原创 使用vue-echarts绘图更新option视图不更新问题

在更新echarts视图的配置项时,在对echarts图本身的配置项进行修改的时候,删除新增的图表配置,视图并不会更新,查看原因之后可以发现是因为对于echarts来说,为了提升效率,会自动将图表的option与之前的option进行合并, 但是当图表,根据传进来的option变化的时候,比如折线图当传进来两列数据的时候绘制一条线,传进一列数据时就绘制一条线。

2023-01-03 19:25:33 3152

原创 在chrome中修改dom元素样式

开发过程中,我们很多时候想在chrome中直接调试元素样式,这样是比较快捷的一种调试方法,对于正常元素,这是很容易做到的。但是针对某类hover展示元素,就很困难,因为当选中->鼠标移动到样式区域的时候,hover元素就不再展示,这时也就没办法修改样式了。解决方法:在控制台键入 setTimeout(() => { debugger }, 2000) ,然后在未执行debugger这个时间区间,利用快捷键选中hover展示的想要修改的元素,此时页面进入debugger,即可修改hover元素样式。

2022-12-19 15:07:28 467

原创 如何保存el-pagination组件的分页状态。

当用户从列表页——>详情页——>列表页,在列表页的mounted生命周期则可以获取当前存在sessionStorage中的页码数值,并赋值给分页组件绑定的页码变量,不过这里还有两个点需要注意:一是在列表页的时候什么时候去获取sessionStorage的值 二是我们的sessionStorage值应该在什么时候清空。那如何判断是从详情页返回的呢?可以在进入详情页的时候,存储一个seeion,来标识,再返回列表页的时候则可以判断,该session是否存在,存在即去读取这个当前页码的值,反之则不需要读取;

2022-09-27 16:31:36 692

空空如也

空空如也

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

TA关注的人

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