自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 记 wx-open-launch-app 的一次开发实践

App分享到微信的卡片通常是些简单的活动引流引导页,其最终还是引导你打开App拓客。通常做法是分享的H5页会有打开App的按钮,点击会在右上角提示你在浏览器打开,然后在浏览器打开你的App。这种做法繁琐可能会让游客失去打开或者下载App的耐心,达不到理想的拓客效果。,让公众号H5页可以直接打开App,方便有效。

2023-06-19 14:21:31 816

原创 lerna + yarn workspace多包管理

npm多包管理

2022-11-14 18:40:15 1778 1

原创 tsconfig 常用配置项

基于typescript的项目的根目录下都会有一个文件(`tsconfig.json`), 这个文件主要用来控制typescript编译器(tsc, typescript compiler)的一些行为, 比如指定哪些文件需要让tsc来编译, 哪些文件不想让tsc进行编译之类的。通常会配合eslint配置`@typescript-eslint`做代码检测。

2022-10-13 20:57:12 6122

原创 npm包发布与迭代

npm包发布与管理

2022-07-29 11:30:50 1528

原创 js设计模式与开发实践

面向对象面向对象区别于面向过程,面向过程是从解决一个问题的过程出发,一步一步的调用函数去解决。而面向对象专注于通过对象的一些方法去解决问题,不同的功能可能由不同的对象来负责解决。类和对象类是一个抽象概念,是一类具有相同特征的事物的统称,比如大学生。对象是具体的事物,是类的实例,比如具体的大学生张三。面向对象的三大特征封装:指一个类可以有一些私有属性和方法,可以将一些问题的解决方法封装起来。对外提供一部分接口,通过调用接口可以解决问题,但是外部并不知道具体解决方法是什么。继承:一个类可以通过继

2022-04-20 11:34:43 489

原创 原型链与继承的实现

前言Js作为面向对象的弱类型语言,继承也是其非常强大的特性之一JS继承的实现方式既然要实现继承,那么首先我们得有一个负累,代码如下:function Animal() { this.name = name || 'Animal' this.features = [] this.sleep = function() { console.log(this.name + '正在睡觉') }}Animal.prototype.eat = function(food) { co

2022-04-13 10:52:01 262

原创 前端网络安全与跨域

同源策略所谓同源策略,就是“协议+域名+端口号”三者相同。即便两个域名指向同一个IP地址,也是非同源同源策略是一种约定,它是浏览器最核心也是最基本的安全功能,如果缺少了同源策略,浏览器很容易收到XSS/CSRF等网络攻击。同源策略限制的内容有:cookie / localstorage / indexDB 等存储性内容DOM节点ajax请求发送出去后,结果被浏览器拦截掉。跨域请求并不是发送不出去请求,请求能发送出去,服务器端也能接收并能正确返回结果,只是结果被浏览器拦截了。同时也说明了跨域

2022-03-23 11:20:38 5012

原创 web页面水印实现

对于页面水印的实现思路是:创建一个元素,让他浮在页面最上层,让他有种蒙了一层水印的效果水印的效果我们可以给这个元素一个背景图(background-image),背景图就用svg生成。具体实现如下:创建水印元素让他浮在最上层<style> #water-mark { height: 100%; width: 100%; z-index: 999999; position: fixed; left: 0; top: 0; po

2022-03-09 09:09:28 1987

原创 nginx学习

负载均衡如果对于某个服务请求量很多,单个服务器支撑不了,这个时候我们可以选择多加几个服务器,然后把请求分发到各个服务器上,将原先的请求集中到单个服务器的情况改为请求分发到多个服务器上,就是负载均衡。nginx的负载均衡对应于upstream配置。(具体upstream的使用说明可以自己去搜索,在这里不展开了)具体实现如下:# 1.在这里我们通过node启动两个服务,用于接收请求# server8081.jsconst express = require('express')const http

2022-02-24 18:09:04 1620

原创 docker学习

常用命令镜像命令docker images # 查看本地镜像可选项:-a --all # 全部-q --quiet # 只输出id-f --filter # 过滤docker search # 搜索镜像可选项:-f, --filter # 过滤 --filter=STARS=3000(过滤收藏数为3000的镜像) --format # 格式--limit # 限制镜像个数docker pull # 下载镜像# 下载镜像 docker pull 镜像名[:ta

2022-02-15 14:40:52 470

原创 javascript执行上下文

执行上下文(Excution Context)Js代码在引擎中是以“一段一段”的方式来执行的,而非一行一行来分析执行的。而这“一段一段”的可执行代码无非三种:Global code, Function code, Eval code。这些可执行代码在执行的时候会创建一个一个的执行上下文。例如,当执行到一个函数的时候,js引擎会做一些“准备工作”,而这个“准备工作”,我们称其为执行上下文。那么随着我们执行上下文数量的增加,js引擎又如何管理这些执行上下文呢?这时便有了执行上下文栈。这里我们用一段贯穿全文的

2022-02-15 14:00:20 4484 1

原创 webpack动态加载与打包

webpack代码拆分webpack有两种组织模块依赖的方式,同步和异步。异步依赖作为分割点,形成一个新的块,在优化了依赖树后,每一个异步区块都作为一个文件被打包。上下文模块(contextModule)上下文模块有6种类型,分别为sync/lazy/lazy-once/eager/weak/sync-weaksync:直接打包当前文件,同步加载并执行lazy:为每个import()导入的模块生成一个可延迟加载(lazy-loadable)的chunklazy-once:生成一个可满

2022-02-11 16:45:37 2621

原创 块级作用域的理解

块级作用于的概念作用域永远都是任何一门语言的重中之中,因为它控制着变量和参数的可见性和生命周期。讲到这里,首先要理解两个概念:块作用域和函数作用域。什么是块级作用域呢?任何一对花括号({})中的语句集都属于一个块,在这之中定义的所有变量在代码块外都是不可见的,我们称之为块级作用域。函数作用域就更好理解了定义在函数中的参数和变量在函数外是不可见的。作用域分析function fn1(x) { var a = 0; let b = 0; { var c = 1; // 未用le

2022-02-10 15:36:06 9756 6

原创 js堆与栈的应用

堆与栈栈(stack)/ 堆(heap)/ 队列(queue)是js的三种数据结构栈(stack)栈的特点是 “LIFO,即后进先出(Last in, First out)”。数据存储时只能从顶部逐个存入,取出时也去要从顶部逐个取出。例如搭建积木堆(heap)堆的特点是 “无序” 的key-value “键值对”储存方式。例如书架存书堆的存取方式跟顺序无关,不局限出入口队列(queue)队列的特点是 “FIFO,即先进先出(First in First out)”。数据存取时 “从尾部插入,

2022-02-10 15:30:40 798

空空如也

空空如也

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

TA关注的人

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