自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 visual stdio 2019环境配置及项目创建教程

目录一. 下载法一:到电脑自带的微软商城搜索visual studio 2019(为防止网页搜索下到病毒)法二:Visual Studio 2019 版本https://docs.microsoft.com/zh-cn/visualstudio/releases/2019/release-notes二. 环境配置汉化工作负荷下载修改三. 创建项目一. 下载法一:到电脑自带的微软商城搜索visual studio 2019(为防止网页搜索下到病毒)下好之后出现的是.

2022-02-03 22:07:19 3493

原创 【刷题日记】螺旋矩阵

这个是一道模拟题,但我记得我大一第一次做这道题的时候真的就是纯按步骤模拟,没有对代码就行优化,导致代码写的很臃肿。具体实现细节可以看我代码里的注释。有这么几个地方可以改进。

2024-09-17 18:02:48 179

原创 刷题日记【160. 相交链表】

b,则指针分别遍历完本身链表后,两个指针不会同时到达链表的尾节点,然后指针 移到另一个结点头部继续移动,在指针 pA 移动了 a+c+b 次、指针 pB 移动了 b+c+a 次之后,两个指针会同时到达两个链表相交的节点,该节点也是两个指针第一次同时指向的节点,此时返回相交的节点。设headA 的不相交部分有 a 个节点, headB 的不相交部分有 b 个节点,两链表相交部分有 c 个节点。=n,两个指针不会同时到达两个链表的尾节点,到另一个头部后继续遍历,在都移动了 n+m 次后,两个指针会。

2024-09-17 01:09:25 453

原创 如何把我另一个分支上的commit拿过来

在开源过程中,每一次PR都是要经过严格的review的,这期间可能会进行多次修改,补充提交,而且这一般来说不是一个很迅速的过程,此时我们可能会先往后进行开发。我一般会把项目分模块逐步建立分支,当前一个pr合并完毕后我再基于最新代码创建分支,把我先前开发好的commit拿过来提交。这个过程非常重要的一个命令就是git cherry-pick,该允许将特定的commit应用到当前分支上。

2024-09-11 16:39:50 629

原创 GPG配置不上未解之谜!!

需要注重local和global两边的配置,只有一边配置好大概率还是会出问题!git config --global --list 查看全局配置。请保证当前项目配置无误。

2024-09-11 16:33:22 90 1

原创 对已经提交的commit补充gpg签名

PS:最近这半年忙于实习开源和面试,大部分产出博客转到了语雀私人空间中,很多内容不在csdn上进行发布了,最近打算整理下自己的笔记,发布一部分到csdn上。这篇文章写作背景是,参与开源项目需要对commit加上gpg签名,我在第一次提交时没有注意到这一点,所以后续gpg配置好之后需要将之前的commit进行补充签名,最近也有人来问我如何补交,整理了一下步骤作为此篇博客内容。【另外,在配置gpg上我也遇到过很麻烦的问题,当时定位问题花了很久,网上也没找到解决办法,预计在下一篇博客中发出。

2024-09-11 16:30:12 444

原创 SFC CSS 功能:深层选择/插槽选择器/动态绑定

实际值将被编译为散列 CSS 自定义属性,因此 CSS 仍然是静态的。自定义属性将通过内联样式应用于组件的根元素,并在源值发生变化时进行响应式更新。,因为它们被视为传入它们的父组件所拥有。要明确定位插槽内容,请使用。不受范围样式的影响,但您仍然可以使用深度选择器来设置它们的样式。标签支持使用 CSS 函数将 CSS 值链接到动态组件状态。默认情况下,范围样式不会影响 渲染的内容。“深入”,即影响子组件,则可以使用。如果您希望样式中的选择器。创建的 DOM 内容。

2024-09-06 10:51:32 634

原创 记录开源项目中点击空白区域关闭一二级菜单的问题

今天在开发TinyEngine华为低代码引擎开源项目时,我遇到了一个细节的问题:原本是点击标题显示菜单,再次点击标题或点击空白区域关闭菜单。中国没错的,然后呢,这里我手动实现了一个二级菜单,二级菜单内部点击是会切换该选项后面跟着的图标的,我希望点击完之后只是图标变化,但点击菜单内部时菜单也会关闭,虽然也能用,但很影响用户体验,这不是我期望的行为。简单的描述一下问题就是:在项目中,我实现了一个点击标题显示菜单的功能,并在点击空白区域时关闭菜单。然而,点击菜单内部时菜单也会关闭,这导致用户体验不佳。

2024-07-18 16:42:56 808

原创 谈谈检测浏览器类型

前几天被问到如何检测浏览器类型,我突然发现我对此并不了解,之前的项目中也没有使用到过,只隐约记得通过一个自带的方法即可获取。所以今天特意来仔细补习一下。1.正则表达式2.引用外部库3.判断浏览器的其他特性。

2024-07-01 22:36:54 874

转载 【转载】开源PR教程---我要提交 PR,怎么上手?

最近在参与开源项目,对于pr流程还不太清晰,看到了一篇不错的介绍文章,这篇文章摘取重要的部分转载一下。文章末尾有标注原文。

2024-06-29 22:27:49 261

原创 刷题日记6.25

操作,通常用于加密、校验和其它计算任务中。异或操作符在JavaScript等编程语言中的表示为`^`。对于两个操作数的每一对对应的比特位,只有当它们。注意题目要求实现线性时间复杂度算法解决,所以就不要想着排序或者用set数组之类的了。这道题考察的是异或算法,也是异或算法的一个典型作用例子。异或(XOR)是一种常用的。所以题目的做法一目了然。

2024-06-25 01:45:04 307

原创 刷题记录6.24

438. 找到字符串中所有字母异位词这道题乍一看感觉很复杂。因为 异位词指由相同字母重排列形成的字符串,包括相同的字符串,那么就会有很多种组成,增加题目的复杂性。对于这个我们可以转化成计算字母出现的频率,如果频率一致即符合要求。这道题的思路:滑动窗口根据题目要求,我们需要在字符串 s 寻找字符串 p 的异位词。因为字符串 p 的异位词的长度一定与字符串 p 的,所以我们可以在字符串 s 中构造一个长度为与字符串 p 的长度相同的,并在滑动中维护窗口中每种字母的数量;

2024-06-24 23:46:41 875

原创 深入理解 JS/TS 中的 filter 方法及其布尔值筛选功能

filter 方法是数组对象的一个内置方法,用于创建一个新数组,其中包含所有通过指定函数测试的元素。(filter 方法会遍历数组中的每个元素,并将那些使测试函数返回true的元素组成一个新的数组。❗再三强调,会返回一个新的数组哦!!!但使用了filter不会对原数组产生影响。

2024-06-19 11:41:44 1023

原创 用h()给渲染的组件传递参数

而我们只能在Downloading组件中去监听进度条的进度,而关闭提示框又需要调用notification.close(key),所以我采取的方案是,渲染进度条时,将当前提示框的key传递给Downloading组件,当Downloading组件监听到进度为100时,调用notification.close(key)。项目中进度条的实现是通过Vue3的 h()函数将进度条组件Downloading和自定义进度条函数process渲染在notification中的。,不会作为普通的 prop 传递给组件。

2024-06-13 15:42:15 488

原创 为什么defineComponent组件名字和文件名字不能一样

这可能是因为工具或框架在处理组件时依赖于组件名称和文件名的唯一性,如果它们相同,则可能会引起冲突或错误。但是在Vue 3中,使用`defineComponent`来定义组件时,Vue 不再使用 `name` 选项来指定组件的名称,而是推荐使用 `filename` 选项。今天在开发新组件时,在使用defineComponent定义组件时,把name写成了文件名的首字母大写法导致项目一直报错。找了很久才知道是名字的问题。这个时候我们在定义组件时,name一定不能与文件名相同,否则在调用组件时就会发生冲突。

2024-05-20 11:53:23 347

原创 vscode的git插件使用教程

虽然git的命令我没有滚瓜烂熟,但vscode的git插件是尊嘟很好用啊,都被我用烂了。在网上看见一个讲的很不错的插件教程。转载一下。跳过了vscode安装过程。

2024-05-09 17:06:15 5084

原创 Week1

好久之前写的算法题解!!!一直忘记在草稿箱里了,既然写了就发出来吧!

2024-04-26 11:42:47 804

原创 学习总结!

好久之前的学习总结!!!一直忘记在草稿箱里了,既然写了就发出来吧!

2024-04-26 11:41:45 226

原创 2022.8.22总结

好久之前的学习总结 忘记发了一直在草稿箱,写了就发出来吧!

2024-04-26 11:41:03 222

原创 理解控制反转

当需要实现不同操作时,用户和程序员都无需修改,只需要修改xml配置即可。通过set注入,改变ref来改变使用的接口实现类。而测试函数中只需要写这个无需改变。

2024-04-26 11:39:59 259

原创 vue3+setup中监听路由变化改变样式

在Vue 3中,有一个非常方便的API可以观察响应式数据的变化,即watchEffect。watchEffect是一个新的API,可以自动跟踪响应式数据的变化,并在其发生变化时执行回调函数。由于项目中数据大屏页面的背景颜色不同于其他页面,而面包屑导航直接设置在根页面中,底板也直接设置在根页面中,所以今天还学习了vue3+setup中如何监听路由变化来改变根页面的背景颜色样式。在本例中,我们将使用watchEffect和useRoute来观察路由的变化,并更新页面的样式。已经成功实现,这里写个博客记录一下。

2024-04-26 11:37:43 424

原创 【清理草稿箱】学习总结

好久以前写的学习笔记了...当时写了忘记发 今天清理草稿箱才发现,既然写了就发出来吧!

2024-04-26 11:36:33 353

原创 GraphQL速学笔记

在GraphQL中,客户端可以通过发送查询语句来精确地请求需要的数据,而不是像RESTful API那样只能获取固定格式的数据。3. 类型系统:GraphQL具有强大的类型系统,定义了数据模型和查询语句的结构,使得开发者可以在开发阶段发现和修复问题。4. 自描述性:GraphQL API可以提供自描述性的文档,客户端可以通过查询语句来探索API的功能和数据模型。1. 精确的数据获取:客户端可以精确地指定需要返回的数据字段,避免了过度获取不需要的数据。GraphQL 入门 | GraphQL。

2024-04-24 11:31:50 1190

转载 【转载】tsconfig.json常用配置

如何生成tsconfig.json文件。

2024-04-23 16:11:18 960

原创 px、em、rem区别介绍

任意浏览器的默认字体高都是16px。为了简化font-size的换算,需要在css中的body选择器中声明Font-size=62.5%,这就使em值变为 16px*62.5%=10px, 这样12px=1.2em, 10px=1em, 也就是说只需要将你的原来的px数值除以10,然后换上em作为单位就行了。比如说你在#content中声明了字体大小为1.2em,那么在声明p的字体大小时就只能是1em,而不是1.2em, 因为此em非彼em,它因继承#content的字体高而变为了1em=12px。

2024-04-23 16:10:06 749

原创 TypeScript学习8:泛型

引入需求如果我们不使用泛型但是如果我还需要别的类型参数呢,比如bool值等,不断像上面这样创建类似的代码会让代码非常丑且冗余所以这里我们需要用到,简而言之,泛型就是把类型当做和Java中的泛型原理是一样的!那么我们使用泛型来实现上面这个需求就很简单了只需要在函数名后面加上尖括号就可以使用泛型了(这里指定T为number类型)很简单,我们可以定义多种泛型。

2024-04-23 14:58:49 422 1

原创 TypeScript学习笔记7-枚举

如果中断了,那么下面的就从中断的地方继续增长。如果是字符串,那么定义的时候就要全部写上。主要作用就是节省因为枚举带来的性能消耗。如果是纯数字,下面的会进行自动增长。

2024-04-23 12:03:20 379

原创 RouteRecordRaw

1.Component: 表示一个 Vue 组件类型,这个类型来源于Vue。2.: 表示一个对象,键是字符串类型,值是组件类型 `Component`。这个类型来源于TypeScript。2.5.Dictionary:Dictionary不是 TypeScript 中的内置类型,而是一种常用的自定义类型约定。在 TypeScript 中,Dictionary通常用于表示一个键值对对象,其中键是字符串类型,值可以是任意类型。Dictionary是一个泛型类型,它接受一个类型参数T,表示值的类型。

2024-04-23 11:03:52 1898 2

原创 TypeScript学习笔记6-函数类型

它允许你在编写函数时指定参数的类型和返回值的类型,从而增加了代码的可读性和可维护性,同时还能在编译时进行类型检查。(greeting的参数类型是string,默认值是Hello,punctation的参数类型是stiring,但其背后紧跟了一个?【注意:如果有可选参数,你不能直接在函数体种直接运用可选参数,必须进行判断,比如if判断可选参数是否为undefined】这里的类型还支持更加复杂的类型,1比如可选参数,默认参数和剩余次数。在函数类型提示中,参数和返回值的类型声明都是。

2024-04-10 23:17:46 253

原创 TypeScript学习笔记5-类型别名

它允许你为现有的类型提供一个更具描述性的名称,从而增强代码的可读性和可维护性。类型别名通常与联合类型(Union Types)或交叉类型(Intersection Types)结合使用,以创建更复杂的类型。2. type 可以定义 联合类型 和 可以使用一些操作符 interface不行。也可以使用联合类型命名一个可能是string也可能是string[ ]的类型。在 JavaScript 中,类型别名是一种自定义类型的方式,通过关键字。这里也可以使用接口中的描述属性比如?2️⃣更常使用到的地方是,给。

2024-04-10 22:51:01 332

原创 TypeScript学习笔记4-接口

在TypeScript中,接口用于定义对象的结构和类型。它是一种抽象的概念,用于描述对象应该具有的属性、方法和行为。

2024-04-08 00:58:07 233

原创 TypeScript学习笔记3-数组

一般来说,数组里面的元素都应该是同类型的typescript中有多种数组形式杂乱数组元组多维数组。

2024-04-08 00:42:26 341

原创 TypeScript学习笔记2-联合类型、类型断言

在TypeScript中,类型断言允许开发人员手动指定一个值的类型,即告诉编译器某个变量的确切类型。这在某些情况下是非常有用的,尤其是当开发人员比编译器更了解变量的类型时。:类型断言只在编译阶段起作用,不会对真实的运行时类型产生影响。因此,在进行类型断言时,应确保断言的类型是正确的,以避免潜在的类型错误。类型断言:简单来说就是人为将某一种不确定的类型断言为确定的类型,这只是在编译器层面的欺骗行为。无论是尖括号语法还是as语法,它们实际上是告诉编译器"相信我,我知道这个变量的类型是什么"。

2024-04-08 00:31:13 255

原创 Typescript入门学习笔记

Javascript是一门弱类型动态语言,开发大型项目时,开发速度快,但是后期维护非常困难针对于JavaScript的此个痛点,有了TyepScript.(微软开发),属于Javascript的超集.对JavaScript语法就行了扩展.添加了静态类型检查和一些新的特性现有的JavaScript代码可以与TypeScript一起工作,无需进行任何转换和修改.(TyepScript中可以允许JavaScript代码!TypeScript通过类型注解提供编译时的静态类型检查.

2024-04-01 19:27:50 454

原创 刷题记录-leetcode字母异位词分组

5️⃣ list.push(str) ==>将当前字符串放进list(如果存在一样的hashkey,会添加到列表里去,如果不存在,会添加到我们新建的list里面去)4️⃣ map.get(key) ==>存在key键的值=>map[key]对应的[xxxxx] / 不存在 => -1,新建一个。这道题考察的是对 哈希表(如JavaScript 中的 Map)的运用,以及对字母异位词的理解和处理能力。所以在这个问题中,哈希表的key是按照字母顺序排列后的字母组成的字符串,value是由相同字母异位词组成的。

2024-04-01 17:04:55 523

原创 el-dialog宽度自适应

其中有一个是,在使用element-plus的el-dialog时,在pc端和在手机端打开,由于屏幕宽度的不同,我希望el-dialog的宽度是不一样的。当我在pc端用浏览器打开页面,并缩小窗口时,并不会触发宽度的变化。1️⃣首先,直接给el-dialog设置自定义class结合媒体查询是无效的,直接设置el-dialog的样式属性无效。但每次窗口修改时我需要刷新才会重新触发修改width的操作,所以这里我再加了个监听视口变化的操作。这只是获取你操作屏幕的宽度,并不是你窗口的宽度。

2024-03-28 19:13:09 1894

原创 mockjs学习

每个属性组成部分:属性名 生成规则 属性值”属性名|生成规则“:属性值1️⃣七种生成规则属性名 和 生成规则 之间用竖线分隔。生成规则 是可选的。生成规则 的 含义 需要依赖 属性值的类型 才能确定。属性值 中可以含有@占位符。属性值 还指定了最终值的初始值和类型。具体示例可以看官方文档。

2024-03-10 22:11:47 1034

原创 今日学习总结2024.3.3

今天也是全天自习的一天,非常充实早上八点开始接着晚上的docker配置,并一边同步博客,还是遇到了卡壳看了一个视频,里面提到了物联网,感觉对这个概念更加了解了,当年填报专业志愿的时候有将物联网工程放在备选项里,感觉很有意思;这个视频讲的主要是家用联网设备的安全问题。之前家里安装了一个监控,现在想想还蛮危险的,家用摄像头很容易就能被黑客破解控制,很容易暴露隐私。在牛客上看面经和大佬的自述,看到已经拿到满意工作的前辈回顾大学历程,感觉真的很优秀啊。上午十点半开始打力扣周赛,有点手生,表现不算好,做出三

2024-03-03 14:34:05 536

原创 leetcode第 387 场周赛总结

而且Y的位置是随n的大小固定的,所以我们只需要统计出Y内的0,1,2的数量以及整个矩阵的0,1,2的数量,然后计算出最小操作数就可以了。这道题其实就是个简单的二维前缀和,也很简单。这里我已经改进了,但主要还是提供一个思路,就不把修改后的代码贴出来了,如果不会这道题可以顺着我的思路自己做出来。第一道简单题,可以通过slice(-1)获取最新插入的数,进行比较分别操作即可,没什么好说的。这次周赛,题目比较简单,第三道题有点浪费了时间,思路是对的,但是被我把问题复杂化了。数值只可能是0,1,2;

2024-03-03 12:12:20 396 1

原创 今日学习总结2024.3.2

很后悔之前胆小,没有提前投简历找实习,现在稍微有点晚了,希望能在暑假前找到满意的实习。还没像我到大三下学期的小伙伴们,大胆去面试吧。实验室一个星期唯一一天的假期周六,也就是今天,也完全不想放假出去玩啊,在实验室泡了一天。最近的学习状态比较好,感觉非常享受知识进入脑子的过程,有点上头。

2024-03-02 23:56:37 455

操作系统复习题(1-4章)

操作系统复习题(1-4章)

2024-01-06

空空如也

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

TA关注的人

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