自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(103)
  • 问答 (2)
  • 收藏
  • 关注

原创 【golang】sort.Slice实现多条件排序

还是以前的笔记,上传一下。

2024-09-05 21:23:05 237

原创 【golang】使用container/heap官方包实现一个优先队列

比如这里的PQ_of_int,我在Less方法之中定义的是一个升序,但是最后pop出来的确实12356这样的顺序,可能这里有些说法我不是很清楚。2、pop行为可能在js当中表示删除数组的最后一个值,这里pop行为是可以自定义的,我将pop行为定义成删除队列最后的值,而真实运行起来,却是。主要测试了两个优先队列,一个队列是针对Person结构体,第二个队列单纯就是int切片。golang实现优先队列,以前写的一个简单例子,现上传备份。

2024-09-04 23:46:23 456

原创 【kafka】window系统上开启zookeeper显示找不到路径

应该是执行了一个bat脚本之后再加上对应的配置文件,但是我这边死活显示“系统找不到对应路径”,原先以为是我系统win7的原因,后来发现是环境变量里面JAVA_HOME配置了一个无效地址。说是kafka2.2.0版本之后自带zookeeper,进入对应路径之后可以通过如下指令开启zookeeper。

2024-04-24 00:05:52 312 3

原创 【grpc】protobuf学习笔记(二):结合grpc生成客户端和服务端

重新定义server并重新定义四个方法。在写rpc服务我们可以看到,我们写的是一个类似golang接口的东西,具体服务的实现是没有定义的,那我们这里就要将其定义起来。核心流程就是打印request之中的信息、查找用户、返回用户。那这部分的方法的框架应该如何定义呢?如果你看过这个文件就知道了,我们是基于pb.UnimplementedTestServer这个备用结构体的基础上重新创建了自己的TestServer,然后重新定义了四个服务。

2024-03-29 21:51:27 1016

原创 【grpc】protobuf学习笔记(一):生成一个比较综合的message

一年前学过对应的知识,终究是太潦草了,这几天网上学习了一下,重新写一下笔记。这里是protobuf和golang的结合。

2024-03-26 20:29:58 910

原创 logrus包学习(一)

个人学习记录,写下来备用logrus是golang的结构化日志包。

2024-03-19 22:53:50 588

原创 ts学习:is关键词

这里我们的参数选用了unknown类型,该类型就是一个保险的any,当你去调用一些属性和方法的时候会报错,因为其是一个危险的“未知”类型。虽然我们已经判断出其是个string类型,但是其类型没有实现转换,因此不能调用length属性。在上面这个判断中,istring能判断一个值是否是string,是的话就打印出该字符串的长度。这里就没有报错,如果在编辑器上可以发现,这个someValue的类型转成了string。is关键词主要用来框定类型并实现对应的类型断言,下面看一个例子。

2024-02-28 18:26:52 653

原创 前端优化之代码压缩gzip

Gzip是GNUzip的缩写,最早用于UNIX系统的文件压缩,说是压缩,实际上可以看成是一种编码方式,只要编码后形成的字符少了,解码后能保真,那这就一种较好的代码压缩方式,当然这只是我一个半路出家的门外汉的理解,具体的编码解码内容可以自行百度。这里的代码压缩不是指的vite当中的build.minify的那个选项,而是指的是gzip这样的压缩方式。后者指的则是服务器对代码的一种压缩方式。当然这个配置是简写的,主要是在vite配置对象的plugins部分配置,具体配置可以看该插件的官网。

2024-01-26 17:12:18 617

原创 前端工程化之上cdn

答案是可以的,那这些包就会被托管到分发站点上,就是在全国都有服务器,用户在观看你的页面的时候,你公司的后台传过去剔除了这些依赖的实际的内容,同时用户的浏览器又会从最近的网站下载这些依赖,这样速度就能提升了。这就是cdn,内容分发网络,有点像京东在各地的仓储节点,一起构建起一个强大的共享js脚本网络,很多大的互联网公司都提供这样的节点的,当然我们最熟悉的还是jsdelivery、unpkg这样的网站。我们来看一下打包的情况。上面的引入方式比较好,因为在我的测试中,官网给出的引入方式会报错。

2024-01-25 19:55:06 612

原创 husky结合commitlint审查commit信息

上图是一个type-enum的配置,我们要配置的内容其实是value中的,condition代表了生效条件,也就是你的msg的类型一定要是在value之中,rule表示应该是检测的时机,这里是永远需要检测,level应该决定的是违反该规则是否报错,这样的话我们就能更好理解配置中每个内容了,这里其他配置默认配置我就不多说了。说明一下我们上面的commitlint.config.js之中配置应该是自定义部分和@commitlint/config-conventional这个配置的融合版本。

2024-01-23 20:40:51 1383

原创 husky结合lint-staged对特定内容进行修改

具体的意思也就是说针对你所在分支缓存区的文件(就是那个gitadd之后的文件),其中符合src/**/*.{js,vue}规则的内容(也就是src中的js或vue),采用以下的脚本,我这边是两个脚本,所以是一个数组的形式。eslint这样的lint行为生效的区间基本上是所有的js文件,这样的话,岂不是连其他同事的内容都lint到了,这样的话非常不好,我希望只针对我的分支进行lint,此时就需要lint-staged包。在上面的文件之中,结尾没加封号,提交一下,使用-n后缀跳过git钩子。

2024-01-22 20:57:11 540

原创 hasky的初步使用

因为在eslint fix之后,只要这个fix地过程是顺畅的,不产生任何错误,那么此次提交就直接提交了,而你fix之后的那些新改动因为没有进行git add .因此在这一次的commit之中是不包含的,也就是说你要再一次commit这些改动的行为,当然你也可以使用npm命令完整实现这些行为,比如将上面npm中的lint指令改成如下的条目。当然我看了一些文章,大部分都是在husky中执行commit message的纠正,但从容错上来说,我认为eslint的行为还是放在commit之前手动操作比较好。

2024-01-22 15:00:52 755

原创 【golang】利用&0xff去截取二进制数末尾八位

利用&0xff去截取二进制数末尾八位

2024-01-20 20:57:14 393

原创 vite多页面打包学习(一)

学习一下多页面的打包

2024-01-17 16:31:07 5373

原创 单页面vite打包学习

前端工程化本人真的很发怵,一直也没有专心去突破一下,都是能用就用,所以今天小小学习一下打包,先从单页面应用的vite打包开始。本文主要是一些我的大白话和有限的经验,如有问题望指正。

2024-01-16 00:01:25 1452

原创 【golang】保留浮点数小数点后位数的方法

利用还是格式化输出方面的内容,一个简单的测试,如下。

2024-01-10 16:43:23 1426

原创 关于移动端理想视口的一些概念和想法

当屏幕宽度>设计稿(750px)的时候,假如这个屏幕宽度是1000,他把布局视口也成了1000,这时的设计稿宽度小于布局(画布)宽度,他计算的缩放比例是针对750px这个值的,但是缩放是针对整体画布的,当设计稿750px*缩放比例(4/3)达到屏幕宽度的时候,整个画布宽度是1000*4/3,难怪超出了屏幕。当屏幕宽度>=设计稿的时候,将设计稿宽度(750)赋值给布局视口(画布),实际的屏幕假设还是1000,缩放比例是4/3,画布和设计稿同步放大到1000,三者统一。不知道对不对,先写着再说。

2023-12-21 22:21:25 125

原创 mysql错误处理:Error 1067 (42000): Invalid default value for ‘created_at‘

Error 1067 (42000): Invalid default value for 'created_at'错误的处理

2023-11-09 16:18:00 785

原创 vue3使用钩子代替mixins

vue3使用钩子代替mixins

2023-08-06 18:35:14 911

原创 递归竖栏菜单简单思路

递归竖栏菜单简单思路

2023-07-31 21:13:52 520

原创 [问题和解决]553 Mail from must equal authorized user

[问题和解决]553 Mail from must equal authorized user

2023-07-18 20:01:04 1371

原创 axios中AxiosRequestConfig类型和InternalAxiosRequestConfig类型的区别

axios中AxiosRequestConfig类型和InternalAxiosRequestConfig类型的区别

2023-07-01 16:59:35 7589 2

原创 问题与解决:Vue Test Utils当中不能向组合式写法当中注入data

问题与解决:Vue Test Utils当中不能向组合式api写法当中注入data

2023-06-25 23:09:19 167

原创 ts中使用jest:“mockResolvedValue不是一个函数”的问题解决

ts中使用jest:“mockResolvedValue不是一个函数”的问题解决

2023-06-24 12:18:15 540

原创 vue父子插槽之间的通信

vue父子插槽之间的通信

2023-06-06 09:11:35 155

原创 一个帮助写autoprefixer配置的网站

一个帮助写autoprefixer配置的网站

2023-06-03 16:32:45 1038

原创 webpack将vue3单页面应用改造成多页面应用

webpack将vue3单页面应用改造成多页面应用

2023-05-19 09:50:42 1190

原创 webpack手动配置一个vue3项目

webpack手动配置一个vue3项目

2023-05-17 14:27:04 1316

原创 mysql事务回退之后主键跳跃的问题

mysql事务回退之后主键跳跃的问题

2023-04-10 22:00:38 163

原创 gorm事务当中update不报错的问题记录

gorm事务当中update不报错的问题记录

2023-04-10 11:33:19 595

原创 Gorm查询中重复使用储存变量地址的问题记录

Gorm查询中重复使用储存变量地址的问题记录

2023-03-25 22:24:06 290

原创 rust:解决嵌套——Option类型的map和and_then方法

rust:解决嵌套——Option类型的map和and_then方法

2023-02-03 10:05:16 2189

原创 rust当中返回一个trait的问题记录

rust当中返回一个trait的问题记录

2023-02-01 17:01:37 381

原创 【grpc】关于grpc的第一次尝试

关于grpc的第一次尝试

2023-01-06 13:54:09 496

原创 js类绑定this(react类组件方法为什么要绑定this)

js类绑定this(react类组件方法为什么要绑定this)

2023-01-04 15:59:03 134

原创 js 解构导致的响应性消失以及如何保持解构之后的响应性

js 解构导致的响应性消失以及如何保持解构之后的响应性

2023-01-03 23:32:29 398

原创 golang:关于处理Protobuf中oneof类型的的一个问题记录

golang:关于处理Protobuf中oneof类型的的一个问题记录

2022-12-04 17:37:59 959

原创 【golang】flag包关于FlagSet的一个问题记录

golang语言flag包关于FlagSet的一个问题记录

2022-11-30 21:40:28 486

原创 【golang】结构体备用方法

golang备用方法

2022-11-30 00:56:04 148

原创 golang关于rpc的五对基础client和server的例子

五个对应的rpc的简单的客户端和服务器端,分别涉及到tcp链接、tcp链接封装、jsonrpc、httprpc和json+http+rpc,其实也就是基础学习的五个过程

2022-11-24 19:37:20 685

空空如也

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

TA关注的人

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