自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 vue-pdf实现pdf文件在线预览

vue-pdf实现pdf文件在线预览 - 简书

2023-10-08 12:02:21 131

原创 使用fabric.js+pdf.js实现简易盖章

使用fabric.js+pdf.js实现简易盖章 - 掘金

2023-08-10 16:28:21 454

转载 什么是闭包,闭包的优缺点,闭包的使用场景

闭包

2022-07-14 21:31:17 1439 1

原创 【无标题】Vue3之script-setup全面解析

Vue3之script-setup全面解析

2022-07-03 16:32:56 348

原创 Promise相关思考

1.Promise 中不调用 resolve 与 reject 产生的结果问题:若没有调用 resolve 或者 reject,应该是执行中 的状态,实际的情况是Promise结束了。调研得到结论:从语法的层面,Promise应该一直pending直到resolve或者reject(这种Promise有专门的描述 “forever pending promise”,说明 TC39 考虑过这个问题,但最终把此类Promise的处理问题留给引擎开发者来解决); 从引擎的层面,可...

2022-04-26 16:06:27 263

转载 浏览器机制以及进程线程的关系

很多时候被问到从输入url地址之后,会发生什么?很多时候回答都很笼统,没有自己的核心,所以学习一下大神的思路,以下总结的只是骨干,只有将每一个部分都学习到,这样才是一个知识体系,才能很好的理解上下结构与关系。1. 从浏览器接收url到开启网络请求线程(这一部分可以展开浏览器的机制以及进程与线程之间的关系)2. 开启网络线程到发出一个完整的http请求(这一部分涉及到dns查询,tcp/ip请求,五层因特网协议栈等知识)3. 从服务器接收到请求到对应后台接收到请求(这一部分可能涉及到负载均衡,安

2022-02-12 21:42:43 399

转载 Shared Worker 多页面通信

是这样的,今天玩github,先是在没有登录浏览了一些页面,然后在某一页面进行了登录。这时再切换的其他页面时就看到了下面的提示:那么这是怎么做到的呢?我们可以想到,一种办法是 localStorage,在某一个页面登录时,修改localStorage 状态,其他页面在显示的时候,读取最新的状态,然后显示提示:// 登录的页面localStorage.setItem('login', true);// 其他页面document.addEventListener("visibilitych

2021-11-24 09:42:53 1014

转载 前端跨页面通信

引言在浏览器中,我们可以同时打开多个Tab页,每个Tab页可以粗略理解为一个“独立”的运行环境,即使是全局对象也不会在多个Tab间共享。然而有些时候,我们希望能在这些“独立”的Tab页面之间同步页面的数据、信息或状态。正如下面这个例子:我在列表页点击“收藏”后,对应的详情页按钮会自动更新为“已收藏”状态;类似的,在详情页点击“收藏”后,列表页中按钮也会更新。跨页面通信实例这就是我们所说的前端跨页面通信。你知道哪些跨页面通信的方式呢?如果不清楚,下面我就带大家来看看七种跨页面通信的方式

2021-11-23 17:20:14 488

转载 前端跨页面通信

在浏览器中,我们可以同时打开多个Tab页, 每个Tab可以粗略理解为一个“独立的运行环境”,即使是全局对象也不会在多个Tab间共享。 然而有些时候, 我们希望能在这些“独立”的Tab页面之间同步页面的数据、信息或者状态。同源页面间的跨页面通信1. BroadCast ChannelBroadCast Channel可以帮助我们创建一个用于广播的通信频道。 当所有页面都监听同一频道的消息时, 其中某一个页面通过它发送的消息就会被其他所有页面收到。使用方法也很简单:创建一个标识为 bc的频道

2021-11-23 10:29:00 284

转载 package.json中 npm依赖包版本前的符号的意义

版本的格式major.minor.patch主版本号.次版本号.修补版本号————————————————————patch:修复bug,兼容老版本minor:新增功能,兼容老版本major:新的架构调整,不兼容老版本version必须匹配某个版本如:1.1.2,表示必须依赖1.1.2版>version必须大于某个版本如:>1.1.2,表示必须大于1.1.2版>=version可大于或等于某个版本如:>=1.1.

2021-09-24 11:14:51 73

转载 CSRF 解决方案

小饥梳理了一遍公司网站所有的接口,发现很多接口都存在这个问题。于是采用了anti-csrf-token的方案。 具体方案如下:服务端在收到路由请求时,生成一个随机数,在渲染请求页面时把随机数埋入页面(一般埋入 form 表单内,<input type="hidden" name="_csrf_token" value="xxxx">) 服务端设置setCookie,把该随机数作为cookie或者session种入用户浏览器 当用户发送 GET 或者 POST 请求时带上_csrf_t.

2021-09-18 16:27:17 495

转载 vue两种方式实现:用户长时间不操作退出到登录页

产品说,出于安全考虑,用户长时间不操作,就回到登录页面,让用户重新登录,就像银行的app一样。本文就记录一下实现这种效果的两种方式,分别是前端控制和后端控制,各有细节及适用使用场景前端控制(方式一)思路首先,用户长时间不操作具体表现形式是啥?其实就是事件是否长时间没有被触发执行。比如用户长时间不操作,就没有鼠标点击(click)事件、鼠标滚轮(mousewheel)事件、鼠标移动(mousemove)事件之类的,我们只需要监听这些事件,如果这些事件长时间没有触发,就说明用户长时间未操作,然后

2021-09-16 10:56:17 2520

转载 cookie,session,token的定义及区别

cookie,session,token的定义及区别参考了很多文章总结的。1、cookie(储存在用户本地终端上的数据)服务器生成,发送给浏览器,浏览器保存,下次请求同一网站再发送给服务器。2、session(会话)a、代表服务器与浏览器的一次会话过程,这个过程是连续的,也可以时断时续的。b、cookie中存放着一个sessionID。请求时会发送这个ID。c、session因为请求(request对象)而产生。d、session是一个容器,可以存放会话过程中的任何对象。

2021-09-15 14:46:41 154

转载 JavaScript数组去重(12种方法,史上最全)

https://segmentfault.com/a/1190000016418021数组去重的方法一、利用ES6 Set去重(ES6中最常用)function unique (arr) { return Array.from(new Set(arr))}var arr = [1,1,'true','true',true,true,15,15,false,false, undefined,undefined, null,null, NaN, NaN,'NaN', 0, 0, 'a',

2021-09-09 11:03:26 671

转载 项目依赖同一npm包的多版本,会有冲突吗

上周吃饭时,大家聊到一个问题。比如我的项目trade,依赖了[email protected]版本。 然后我又引入了B,而B依赖[email protected]版本,这时候会产生冲突吗?都知道不会有冲突,因为这种场景太常见了。不过具体是如何做到的,并没有去了解过。今天正好有空,就写了个demo看看首先建立好项目trade,然后安装 [email protected],执行npm ls -depth=1trade└─ [email protected]然后弄个npm包B,让它依赖[email protected],项目trade安装B之后,执行npm ls -depth=1t

2021-07-08 19:48:49 2540 1

转载 Node.js 依赖管理package-lock.json详解

Node.js 依赖管理(三)—package-lock.json详解原文链接:https://www.novenblog.xin/detail?id=68本文拜读百度@小蘑菇哥哥的Node.js 中的依赖管理,正文从这里开始~papackage.jsonnodeJs项目中都会有package.json的存在,这个文件会记录运行该项目所有依赖,并且以平级的形式展示出来,文件内容与下图类似:但是在实际中,一个npm包往往会依赖于其他几个甚至几十个包,这些被额外依赖的包是不会记录在项

2021-07-08 19:30:23 2882

转载 npm安装包依赖管理

前言提起 npm,大家第一个想到的应该就是 npm install 了,但是 npm install 之后生成的 node_modules 大家有观察过吗?package-lock.json 文件的作用大家知道吗?除了 dependencies 和 devDependencies,其他的依赖有什么作用呢?接下来,本文将针对 npm 中的你可能忽略的细节和大家分享一些经验。npm 安装机制A 和 B 同时依赖 C,C 这个包会被安装在哪里呢?C 的版本相同和版本不同时安装会有什么差异呢?packa

2021-07-08 17:33:52 5032

转载 前后端不分离到分离演变,优势,前后端接口联调,排错

前后端分离,不分离简介前言前后端分离已成为互联网项目开发的业界标准使用方式,通过nginx+tomcat的方式(也可以中间加一个nodejs)有效的进行解耦,并且前后端分离会为以后的大型分布式架构、弹性计算架构、微服务架构、多端化服务(多种客户端,例如:浏览器,车载终端,安卓,IOS等等)打下坚实的基础。这个步骤是系统架构从猿进化成人的必经之路。 核心思想是前端html页面通过ajax调用后端的restuful api接口并使用json数据进行交互。名词解释Web服务器/*

2021-06-11 14:51:08 2492 1

转载 离线安装npm 依赖包

https://segmentfault.com/a/1190000022486924?utm_source=tag-newest

2021-04-25 17:12:31 1955

转载 this指向的简单总结

1:在全局作用域下 this对象指向的是window对象例如:结果如下:2:在函数作用域下在非严格模式下: this的指向依旧是window对象例如:结果如下:在严格模式下:this的指向是undefined例如:结果如下:所以在函数里面,在严格模式下,this的指向或者值为undefined3:在对象里面this的指向是当前该对象例如:结果如下:关于this指向有个经典的问题:请看:在非严格...

2021-03-25 17:21:27 98

转载 go 讲解

https://www.cnblogs.com/52php/p/6412554.html

2021-01-07 18:00:57 89 1

转载 跨域最全解决方法

https://www.jianshu.com/p/54cf32157d6d

2019-11-15 09:28:34 76

转载 vue常见前端UI库

vue常见前端UI库VUE资源汇总:https://github.com/RuMengkai/awesome-vue VUX(移动端)项目文档:https://vux.li/#/github地址:https://github.com/airyland/vux移动端采用vux的单页面应用:https://github.com/rumengkai/vue-spa.git ...

2018-09-18 10:12:50 118

原创 git ssh key的多账号管理

大家好,很开心跟大家分享,git ssh key的多账号管理。写这篇文章的起因是我公司使用的gitlab,个人使用的github,这两者的邮箱不同,ssh key 也不同,生成第二个git的key的时候会覆盖第一个的key,必然有一个用不了。百度一大波,终于搞定!其实在~/.ssh目录下新建一个config文件配置一下,就可以解决问题。详细步骤跟大家讲一下:第一步:生成ssh key ,githu...

2018-02-09 16:46:33 267

原创 vue-cli脚手架引入图片的几个方法

我个人常用的方法,一直在摸索更好的方法,如果各位大佬有什么建议,可以给我评论留言哦1、import方法第一步:在.vue文件中import 图片(图片的相对路径),并声明一个变量第二步:在data对象中定义一个属性,属性值是第一步声明的变量第三步:在template中 给标签绑定属性最后刷新界面看效果就可以了!

2017-12-04 18:49:58 16797 1

原创 国内优质原创内容输出平台

1、工作中遇到问题,找度娘,度娘引荐了很多优质原创内容输出平台 ,今天总结一下(后期有新发现再补充哦),方便大家浏览:简书                     http://www.jianshu.com/小专栏                  https://xiaozhuanlan.com/知乎                      https:/

2017-11-28 16:35:47 3592

原创 删除GitHub上的项目

怎样删除GitHub上的项目 第一步:双击GitHub的项目workhard(举例)第二步:确认项目可以删除,双击settings第三步:找到  Delete this repository按钮并单击第四步:在弹出的模态框框中输入需要删除的项目名字,单击下方按钮(I understand the consequences, delete this repositor

2017-11-28 15:35:05 1358

转载 Vue.js状态管理工具Vuex快速上手

Vue2简单入门Vue.js再入门Vue.js使用vue-router构建单页应用Vue.js状态管理工具Vuex快速上手状态管理: 简单理解就是统一管理和维护各个vue组件的可变化状态(你可以理解成 vue 组件里的某些 data)Vuex是什么Vuex是集中的应用程序架构为了Vue.js应用程序状态管理。灵感来自Flu

2017-11-20 15:02:04 442

转载 打造自己的JavaScript武器库

打造自己的JavaScript武器库自己打造一把趁手的武器,高效率完成前端业务代码。前言作为战斗在业务一线的前端,要想少加班,就要想办法提高工作效率。这里提一个小点,我们在业务开发过程中,经常会重复用到日期格式化、url参数转对象、浏览器类型判断、节流函数等一类函数,这些工具类函数,基本上在每个项目都会用到,为避免不同项目多次复制粘贴的麻烦,我们可以统一封装

2017-11-17 17:03:52 351 1

原创 第一天

2017.4.9 开通博客了,希望以后能分享干货给大家

2017-04-09 17:34:40 112

nginx-1.13.6

nginx-1.13.6非常好用的轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行。

2018-02-27

空空如也

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

TA关注的人

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