- 博客(56)
- 收藏
- 关注
原创 http、https、https原理
首先服务器向CA机构进行申请认证,提交服务端的公钥和服务方的相关信息。CA利用单向散列函数(Hash函数)对公钥和服务方的信息进行运算,生成一串固定长度的数字摘要,同时这也是数字指纹,可用于判断数据有没有被篡改。CA机构拥有一对公钥和私钥,CA使用私钥对数字摘要进行加密形成数字签名,数字签名和证书的明文信息共同组成数字证书。SSL数字证书的内容包括多个关键信息,这些信息共同确保了证书的有效性和可信度。证书版本:指证书遵循的版本标准,如X.509v3。
2024-09-05 11:51:00
789
1
原创 根据标签出现的频次渲染不同大小的圆和文字,圆随机摆放且相互之间不重叠
这里其实还需要考虑到适配的问题,如果矩形区域被缩放,那么文字和圆的大小也应该进行缩放,我这里采用的是scale的方式,计算当前屏幕相对于1920(我们开发的参考尺寸是1920*1080)的比例,然后将对应的maxFontSize * scale ,maxWidth * scale,最小的尺寸就不需要再考虑啦,已经很小啦,当然如果最大尺寸被缩放到比最小的都小的时候就直接取最小尺寸吧!该公式成立则两圆相交,其中(x1,y1)为圆1的中心坐标,(x2,y2)为圆2的中心坐标,r1、r2分别为两个圆的半径。
2024-03-07 16:35:39
840
原创 封装异步的方法Promise/Async
在日常的开发工作中,常常会碰到需要在获取到一个或多个异步方法(比如异步请求)的结果后再执行某个操作的情况,当我们希望将这个获取到结果的方法独立封装后使用时,通常可以使用Promise或async/await的方法来进行封装。假设我们需要执行多个异步操作后获取结果后再执行某些操作,如图。如上图,设置定时器2秒后打印文字,并且在打印完文字后拿到返回值后再去执行某些操作,定时器2秒后打印这个操作是异步的,通过promise的方法可以确保拿到异步操作的结果。
2024-03-01 10:09:24
273
原创 层叠顺序、z-index及层叠上下文
在position:relative;z-index:2;的元素中出现一个fixed固定定位的子元素时,即使子元素的z-index的值大于2,实际渲染的时候会发现子元素的渲染顺序仍然是z-index:2
2024-02-21 15:30:10
1072
原创 pc端web网站使用第三方微信登录流程(web、js)
网站应用微信登录是基于OAuth2.0协议标准构建的微信OAuth2.0授权登录系统。
2024-02-19 15:17:24
9807
3
原创 overflow-x和overflow-y不一致时的表现
当设置一个轴的***overflow***为***visible***时,另外一个轴为不同值(auto/hidden/clip)时,***visible***的行为会像***auto***一样
2024-02-02 16:57:26
651
原创 ES6的class
构造函数的prototype属性在ES6的类上面继续存在,定义在类内部的函数相当于定义在类的prototype属性上,prototype对象的constructor属性,直接指向“类”的本身, 但。,这就称为**“静态方法”**,静态方法包含this关键字,ES6 的类,可以看作构造函数的另一种写法。类的数据类型就是函数,类本身就指向构造函数。
2023-10-04 10:49:52
700
原创 table中的td内部的元素不能与td等高的问题
td标签内部的元素使用table布局,但是需要注意的是td必须设置高度,高度为任意值都可以,虽然设置了高度,但是td依然会被内部内容的高度撑开。
2023-09-21 11:51:59
1034
原创 git全局设置账号及ssh连接公私钥获取
仓库为https地址时,再次拉取提交代码都需要重新输入账户、密码,可添加一下全局设置。全局设置账号、邮箱、密码。
2023-09-13 14:53:41
559
原创 观察者模式和发布订阅模式
观察者模式与发布订阅模式的区别:1、观察者模式中只有观察者和被观察者,发布订阅模式中有发布者、订阅者、调度中心2、观察者模式是被观察者发生变化时自己通知观察者,发布订阅模式是通过调度中心来进行分布订阅操作。
2023-08-10 11:56:43
1077
原创 Vue2的defineProperty与Vue3的proxy对比
Vue2中使用Object.defineProperty实现数据响应式,初始化数据时给data中的每个属性使用defineProperty重新定义get,set方法,如果data中的属性是对象时,会循环给对象中的每个属性进行重新定义。vue2响应式数据源码。vue3响应式数据源码。
2023-08-09 12:14:11
224
原创 升级node版本后vue2的项目node-sass、sass-loader安装报错(14.x升级到16.x)
node-sass sass-loader
2023-08-07 17:28:54
1970
原创 微信小程序解决多级页面返回及实现返回时弹出层提示
在微信基础库2.16.0以后开始支持page-container组件,通过这个组件可以对右滑手势返回、安卓物理返回键和navigateBack返回三种操作进行控制。使用下列代码可以实现点击页面返回、右滑手势返回、安卓物理键返回直接返回两级,首次点击返回动作关闭的是page-container组件。也可通过该方法实现返回前页面提示效果。
2023-07-25 12:14:55
1906
原创 微信小程序修改原生组件样式(uni-app)
修改微信小程序原生组件样式;修改swiper指示点样式,需要包裹在swiper的样式选择器下才生效
2023-07-06 12:22:36
2000
原创 vue的v-if,v-show,动态组件,keep-alive
使用v-if的时候会导致组件重新挂载,频繁切换的代价过高,而v-show不会让组件重新挂载,但是这样如果需要刷新数据的时候就不太方便,在vue中我们推荐使用动态组件component结合keep-alive,可以友好地缓存组件也可以使用activated、deactivated等生命周期进行数据处理。注意:最好不要v-for和v-if同时使用,v-for会比v-if的优先级高,如果连用会把v-if添加到每个元素,会造成性能问题。当需要切换显示组件的时候,我们通常会使用v-if,v-show。
2023-02-22 17:23:12
615
原创 ES6的Class的prototype、__proto__
ES6中,Class 作为构造函数的语法糖,同时有prototype属性和__proto__属性,因此同时存在两条继承链。Object.setPrototypeOf的实现方式。类的继承是按照下面模式。
2023-02-22 11:40:47
474
原创 js原型链(prototype,constructor, [[prototype]],__proto__)
原型、原型对象、prototype、__proto__
2023-02-22 08:42:04
184
原创 vue多页应用打包优化(vue-cli3)
glob版本导致glob.sync识别文件路径为空数组webpackOptionsValicationError:Invalid configuration object. Webpack has been initialised using a configuration object that does not match the API schema
2022-11-11 11:44:55
1207
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人