自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(122)
  • 资源 (1)
  • 收藏
  • 关注

原创 selenium框架基础学习

starts-with 开头相同 //a[starts-with(text(),"o")]contains 任意位置包含 //a[contains(text(),"o")]get_screenshot_as_file(path) 截图保存到文件。switch_to.window('window_name') 切换窗口。get_screenshot_as_png()截图的base64内容。last() 列表最后一个 //a[last()]switch_to.alert()处理弹窗。

2023-10-25 09:55:33 418

原创 python基础学习

字符串预留:仅保留一份相同且不可变字符串的方法,不同的值被存放在字符串的驻留池中,python支持字符串驻留机制,对于符合标识符规则的字符串(仅包含下划线,字母和数字)会启用字符串驻留机制。在python中参数的传递都是引用传递,对于不可变对象传递的时候也是地址传递,当给参数赋值的时候,会断开初始的引用创建一个新的值,将引用指向新的值。如果添加了全局变量__all__ *就不再是导入全局的功能会导入__all__中的变量 python3 中不太提倡。a.replace(要替换的字符,替换后的字符);

2023-10-25 09:53:24 155

转载 vite报错 process is not defined

使用import.meta.env代替process.env关键字。在 vite.config.ts 中增加 define。原因: process.env 已经被遗弃。

2023-10-07 10:23:25 1035

原创 js调用栈分析

当调用two函数时,js引擎又会创建一个新的函数执行上下文,并将其推到栈顶,执行完成后,从栈顶弹出,上下文的控制权会交给栈顶的one函数。每当函数调用的时候,js引擎都会为该函数创建一个新的执行上下文并且push到当前执行栈的顶端。当调用one函数时,js引擎会为这个函数创建一个新的函数执行上下文并将其推到当前执行栈的栈顶。执行上下文:执行上下文就是当前js代码被解析和执行所在环境的抽象的概念(执行环境)1.js引擎创建一个新的全局执行上下文,并将这个执行上下文推入到当前的执行栈中。

2023-08-04 11:26:13 231

原创 归并排序算法

【代码】归并排序算法。

2023-08-03 14:57:38 166

原创 希尔排序算法

【代码】希尔排序算法。

2023-08-03 14:56:28 57

原创 快速排序算法

【代码】快速排序算法。

2023-08-03 14:54:50 56

原创 插入排序算法

【代码】插入排序算法。

2023-08-03 14:54:10 35

原创 选择排序算法

【代码】选择排序算法。

2023-08-03 14:53:13 48

原创 手写promise

【代码】手写promise。

2023-08-02 17:33:30 217

原创 react状态管理工具reduxjs/toolkit用法

4.在你的应用程序的入口处,将store与React应用程序进行连接。3.创建一个Redux store并将这些模块整合起来。安装 npm install @reduxjs/toolkit。在组件Counter.js中使用。

2023-07-27 17:56:21 775

原创 react 整合

在这里外部state点击改变数据后,执行test函数每次test都可以拿到最新的值,说明每次test函数都是最新的函数,会浪费性能,这个时候useCallback的作用就是缓存函数,依赖更新函数才会更新,传入空数组[],就不会更新函数console.log(state)这个时候就打印的是初始值,数组中传入了变量,就会根据变量的改变来更新函数,如果不传递,不缓存每次都更新。一、脚手架创建项目 create-react-app。1.useState() 维护函数内的状态。手写setsState。

2023-07-21 11:19:41 270

原创 Vue3学习

他们两个用法相似,ref一般用于基本数据类型,reactive用于复杂数据类型,reacive不能处理基本数据类型,会没有响应式。ref()函数用来给定的值创建一个响应式的数据对象,ref()函数调用的返回值是一个对象,这个对象上只包含一个value属性。当你不需要使用构建工具,或者打算主要在低复杂度的场景中使用vue,例如渐进增强的应用场景,推荐使用选项式API。vue组件风格分为选项式API和组合式API(选项式API是基于组合式API)Vue的核心功能:声明式渲染(template)和响应性。

2023-07-14 15:25:01 342

原创 webpack学习

安装插件:npm install -D babel-loader @babel/core @babel/preset-env @babel/plugin-proposal-decorators --legacy-peer-deps。// use:['style-loader','css-loader'] 使用cssMiniExtractPlugin插件将css抽出。// use:['style-loader','css-loader'] 使用cssMiniExtractPlugin插件将css抽出。

2023-07-14 09:41:42 1641

原创 实现大图片秒开

在图片瓦片加载中,大图像被分割成等大小的瓦片,通常是正方形。每个瓦片都是独立的图像,具有自己的URL路径或标识符。当用户浏览或缩放图像时,只需要加载当前可见区域的瓦片,而不是整个大图像。这样可以有效地节省带宽和加载时间。绘制瓦片:将加载完成的瓦片绘制到画布或图像容器中,以显示出完整的大图像。切割图像:将大图像切分成多个小瓦片,每个瓦片都有自己的位置和标识符。加载可见瓦片:根据可见区域的位置和标识符,仅加载当前可见的瓦片图像。确定可见区域:根据用户的视口和缩放级别,确定当前可见的瓦片区域。

2023-07-04 11:40:44 189

原创 前端常用设计模式

实际应用:vuex的store对象。

2023-06-30 15:42:33 58

原创 图片懒加载方案

二、getBoundingClientRect。三、IntersectionObserver。一、scroll事件监听。

2023-06-30 13:41:28 120

原创 实现call/apply方法

【代码】实现call/apply方法。

2023-06-29 11:58:00 44

原创 手写api—创建对象(实现Object.create方法)

【代码】手写api—创建对象。

2023-06-29 11:23:03 53

原创 centos的一些安装

a.在windows上下载 好rpm文件 http://mirrors.163.com/centos/7/os/x86_64/Packages/b.将文件上传到服务器上 (scp -r D:\wget root@ip:/usr/local/wget)查询wget版本 wget --version。一.centos安装wget。二、wget安装git。

2023-06-14 11:03:32 91

原创 gitlab服务搭建与CIDI

如果还报错Failed to start firewalld.service: Unit firewalld.service is masked.rpm -ivh wget-1.14-15.el7_4.1.x86_64.rpm(wget包名换成自己的) 即可安装成功。通过scp命令上传到服务器(可以在/usr/local/下创建目录wget)使用命令。设置postfix开机自启,并启动,postfix支持gitlab发信功能。下载gitlab包并安装两种方式镜像源安装或者yum下载这里选择镜像源安装。

2023-03-21 10:16:45 633 2

原创 vue开发遇到的问题

写弹框组件时,弹框是否显示是由父组件传入参数控制的,当关闭弹框时子组件需要改变参数,由于数据时单向数据流,所以子组件不能直接修改数据。这里用v-if是为了判断当前列是否需要显示,这里可以用computed计算属性重新定义一个变量对数组进行过滤后传入。子组件使用$emit传递函数名给父组件,父组件回调进行修改。v-if和v-for不能放一起会有性能问题。

2023-03-02 14:56:34 47

原创 前端密码加密

使用RSA(非对称加密)方式进行加密,前端输入密码,加密后传到后台,服务端使用私钥解密后进行数据库查询对比。

2023-02-24 15:37:12 106

原创 react项目中根据项目部署环境来显示logo

因为项目是使用的一个镜像去部署所以他们打包后的代码内容是一样的,在编译阶段就无法知道是什么环境,目前采取的方式是因为node环境是可以获取字段判断当前环境的,所以可以在dockerFile文件中去执行node的脚本去修改图片名称。在前端直接写出logo路径,根据不同环境把对应logo的名称修改为显示的名称,如果本地就显示本,测试环境就显示测,线上就使用线上的图片最终显示的图片名称是favicon.ico。部署后即可根据环境显示。3.如何判断当前环境。...

2022-07-21 17:57:19 689

原创 mac安装nginx

1.查询是否安装nginxbrew nginx如果有就不用安装,没有继续往下,2.安装最新版本nginxbrew install nginx3.启用nginxbrew services start nginx(重启是restart)4.停止nginxbrew services stop nginx默认端口8080,可访问http://localhost:8080/5.查看进程ps -ef | grep nginx6.安装文件位置:nginx的配置文件路径.

2022-05-17 18:00:35 1209

原创 前端知识回顾

1.js是面向对象还是基于对象?面向对象的三大特点:封装,继承,多态。面向对象:先有一个抽象的类,然后根据这个类去实例化对象。eg:java实例化对象public class A{ private String name ; private int age; public void A(String name,int age){ this.super(); this.name = name; this.age

2022-05-17 14:42:28 145

原创 pt,px,屏幕尺寸,分辨率以及ppi关系与换算

pt:磅,一个固定的长度,主要用于印刷与平面设计,1inch(英寸)=2.54cm=72pt。五号字体=10.5pt粗号=42pt1pt=0.03527cmpx:像素,组成屏幕图像的最小点,一个相对大小单位,同尺寸屏幕中像素越小越多,代表分辨率越高。换算公式:1pt=(ppi/72)*px屏幕尺寸:屏幕物理尺寸,指的是屏幕对角线长度。分为四种尺寸:小,普通,大,超大。分辨率:屏幕拥有像素的总数以及屏幕宽高方向的像素数量。ppi:屏幕密度,指每英寸拥有的像素数/每英寸像素。pp

2022-01-09 14:26:29 9494

原创 js数组方法

1.创建数组的方法var arr = [];Var arr = [10];Var arr = [1,2,3]Var arr = new Array();Var arr = new Array(10);Var arr = new Array(1,2,3)Var arr = Array.of(1,2,6)Var set = new Set([1,2,3])Var arr = Array.form(set)2.基本数组方法join()数组转字符串,传入字符作为连接,默认

2021-12-17 09:50:30 445

原创 http的学习思考

长连接和短连接1.http1.0默认使用短连接,http1.1默认使用长连接并且在响应头加入Connection:keep-alive2.短连接:客户端每进行一次Http操作就建立连接,任务结束就中断连接。3.长连接:当客户端域服务端进行一次http操作建立连接后,不会中断,下次继续使用。Keep_Alive有一个保活时间,在不同的服务器可以设置(Apache)默认超时时间是60s4.tomcat设置长连接Keep_Alive是服务端实现的<Connector port="80

2021-12-17 09:36:19 1836

原创 浅拷贝与深拷贝

1.基本数据类型不存在深浅拷贝,浅拷贝拷贝的是引用的地址,当a浅拷贝b时,a改变b也会发生改变,a,b会相互影响,深拷贝b会重新开辟内存,a,b的引用地址不同,值相同,不会相互影响.

2020-10-09 09:16:39 108

原创 js中==和===的区别

在js中==是不严格的比较,比较的第一步会先对数据类型进行比较如果相等,就进行值的比较,如果不相等,它可以转成同一种数据类型进行比较,相等就返回true.(比较的是值)而===的比较是严格的比较,首先对数据类型进行比较,如果数据类型不同就直接返回false,数据类型相同再比较值,值相等返回true(先比较数据类型,再比较值)...

2020-09-25 09:07:55 198

原创 android端与H5端数据交互

由于最近app需要做消息通知,所以事件需要经过android发给h5界面进行数据更新.一.android代码:public class MacrosanEvent { //数据 private Object data; //事件来源 字符串 private String source; //触发对象 private Object trigger; public MacrosanEvent(Object data) {

2020-08-19 10:25:47 1944

原创 unipush消息推送测试

在上篇文章中已经说过unipush的配置以及打包了,现在说下如何测试。1.手机上安装好打包的应用,并且开启通知栏显示(如果不开启手机收到了我们也不会知道)2.登录Dcloud(https://dev.dcloud.net.cn/uni/push?appid=__UNI__ACB5603&type=0),选择unipush的通知消息,先创建一个通知测试在线消息能否收到,这里选择全部用户推送,预览发送通知,然后手机就可收到消息通知2.unipush的离线消息通知只能通过透传才能收到。通过

2020-06-16 10:12:47 2974

原创 uniPush消息推送(离线)

一、注册手机厂商账号(我只测试了华为和小米这里就说这两种)1.华为开发者平台账号注册:(建议直接使用华为账号,否则可能无法使用推送);2.

2020-06-15 19:25:59 12082 32

原创 使用eclipse插件把wsdl转换为java文件

1.准备好wsdl文件2.打开eclipse----》file-----》new ------》other------》Axis2 Wizard------》Axis2 Code Generator选择下一步3.4.选择wsdl文件的位置,选择下一步5.修改1为custom,修改2的包名为项目中的包名,其他都默认,点击下一步6.填写java文件的输出位置,有两种...

2019-10-17 18:31:19 646

原创 jQuery学习(二)

六、HTML DOM遍历和修改 对于Dom的修改上文已经进行了总结,现在说下遍历 1.遍历祖先: parent ,parents,parentsUntil parent:会向上遍历,返回上一级父级 parents:会向上遍历返回所有父级 parentsUntil(‘元素’):向上遍历,返回到传入元素中所有的父级(不包含传入元素) ...

2019-10-10 15:11:41 113

原创 jQuery学习(一)

jquery是一个javascript函数库,它提倡少写多做(write Less,Do More)。jquery包含的主要功能:HTML元素选取 HTML元素操作 CSS操作 HTML事件函数 JavaScript特效和动画 HTML DOM遍历和修改 AJAX Utilities一、HTML元素选取jquery有两种方式可以进入:可以执行多次,不会被覆...

2019-10-08 18:49:26 199

原创 css预处理语言less和sass

常见的css预处理器语言有:less,sass,stylus等语言一、less环境的构建(官网)1.安装node,安装之后敲命令 npm install -g less > lessc styles.less styles.css2.在浏览器环境中使用 Less : <link rel="stylesheet...

2019-09-29 15:52:10 594

原创 JSON-RPC协议

说JSON-RPC先说一下什么是RPC。RPC:远程过程调用,RPC就是从一台机器通过参数传递的方式调用另一台机器上的函数或方法并得到响应结果,RPC在使用形式上像调用本地函数一样去调用远程函数。RPC是如何实现的?RPC的实现有3个重要的步骤 1.寻址:客户端调用的时候怎么去通知服务端我要调用哪个函数,在RPC里每个函数都有自己的callid,所以每次客户端的请 求里面...

2019-09-29 13:34:42 1459

原创 js的call,apply,bind的区别

1.对于这三个方法都可以改变对应对象里面的this指向。2.如果3个方法不传参使用的方法就是一样的 fn1.call(obj), fn1.apply(obj), fn1.bind(obj)3.如果传递参数call函数括号里面对象的后面直接跟着传递的参数,apply也一样,只是参数必须是数组类型,bin...

2019-09-17 08:17:47 114

warmserve 的安装与环境搭建

1.解压安装warmserve (对应系统32或64下载) 2.安装完之后运行该程序,如果说计算机缺少msvcr110.dll而导致程序无法运行 3.运行tools文件中 丢失msvcr110.dll文件下的应用程序安装msvcr110.dll(Microsoft Visual C++ 2012 Redistributable) 4.再次运行warmserve 右下角的图标变绿证明服务器搭建成功 (建议:百度说的直接把msvcr.dll放在C盘下是没有用的,已经试过)

2017-12-02

空空如也

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

TA关注的人

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