自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 获取当前URL所有参数

获取url参数

2022-11-16 10:42:49 908 1

原创 Vite通用组件自动化注册

2,vue的defineAsyncComponent方法:可以创建一个按需加载的异步组件。1,vite的Glob导入功能:可帮助我们在文件系统中导入多个模块。基于以上两点实现组件自动注册。需要用到两个关键的知识点。

2022-10-11 15:18:38 785

原创 文件下载显示进度条以及调取浏览器下载进程

文件下载

2022-07-22 11:18:22 7924 1

原创 Vue-gtag使用

npminstallvue-gtag@1.16.1(根据项目需求下载指定版本较新版本支持的是vue3)event为触发事件'login_success'为触发行为ea,(其中config为公共维度数据)在代码中触发对应埋点事件的写法为。在main.js里添加。

2022-07-15 14:28:36 2317 1

原创 React性能优化

shouldComponentUpdate(简称SCU)SCU默认返回true,即默认重新渲染所有组件React默认:父组件更新 子组件则无条件更新!!!相比较Vue,性能优化对React更加重要SCU一定要每次都用吗?(React不去做过多优化,有性能问题或业务需求需要时适当使用)需遵循数据的不可变性!!!PureComponent 和 React.memoPureComponent在SCU中实现了浅比较memo是函数组件中的PureComponent浅比较已使用大部.

2021-12-16 16:06:31 191

原创 React Portals使用场景

overflow: hiddden父组件z-index值太小fixed需要放在body第一层级

2021-12-16 10:19:45 868

原创 TS编译选项

tsconfig.json:是ts编译器的配置文件,ts编译器可以根据它的信息来对代码进行编译"include":用来指定哪些TS文件需要被编译"exclude":不需要被编译的文件目录路径:**表示任意目录 *表示任意文件compilerOptions 编译器选项target 指定ts被编译的ES版本{/* tsconfig.json是ts编译器的配置文件,ts编译器可以根据它的信息来对代码进行编译 "include" 用来指定哪些ts文件需要被编译 .

2021-12-16 10:11:02 413

原创 Vue基础知识

数据驱动视图Vue通过MVVMReact通过setStateObject.defineProperty()缺点深度监听 需要递归到底 一次性计算量大无法监听新增属性和删除属性

2021-12-07 10:23:05 87

原创 Vue组件渲染更新过程

初次渲染过程解析模板为render函数触发响应式,监听data属性getter setter执行render函数 生成vnode,patch执行render函数会触发getter更新过程修改data,触发setter(此前在getter已被监听)重新执行render函数 生成newVnodepatch的diff算法算出差异总结渲染与响应式的关系渲染与模板编译的关系渲染与Vdom的关系...

2021-12-04 16:21:43 618

原创 网页视口尺寸以及vw/vh含义

window.screen.height // 屏幕高度window.innerHeight // 网页视口高度document.body.clientHeight // body高度vw/vh是根据网页视口高度所定义的长度单位window.innerHeight == 100vhwindow.innerWidth == 100vw

2021-12-04 14:35:54 420

原创 虚拟DOM和diff算法

vdom是vue和react的重要基石diff算法是vdom中最核心关键的部分虚拟DOM的产生DOM操作非常耗费性能jquery可以自行控制DOM操作的时机,手动调整Vue和React是数据驱动试图,如何有效控制DOM操作?解决方案 - vdom(将计算更多转移为js计算,因为js执行速度很快)vdom - 用js模拟DOM结构,计算出最小的变更,操作DOM用JS模拟DOM结构所有的XML都可以用JSON数据格式来表示,没有严格标准但会遵循基本规律Diff算.

2021-12-04 14:04:19 737

原创 JS基础知识总结

if语句处理的不是true或false 而是truly变量及falsely变量 就比如 if(a) 比较的则是!!atypeof能判断哪些类型所有值类型识别函数判断是否为引用类型(不可再细分)闭包自由变量的查找,是在函数定义的地方,向上级作用域查找,不是在执行的地方!!!闭包可以隐藏数据这是我自己写的一个闭包函数箭头函数指向单线程和异步JS是单线程语言,只能同时做一件事浏览器和nodejs已支持js启动进程,如Web WorkerJS和DOM.

2021-12-02 14:25:56 196

原创 js手写深度比较

// 1.判断是否为对象// 2.是否同一个对象// 3.长度是否相等// 4.递归比较function isEqual(obj1,obj2){ if(obj1 === obj2){ return true } let obj1Keys = Object.keys(obj1) let obj2Keys = Object.keys(obj2) if(obj1Keys.length !== obj2Keys.length){ re.

2021-11-25 14:02:32 489

原创 Http缓存

强制缓存cache-control的值max-age 最大缓存时间no-cache 不做缓存no-storeprivate 设置用户做缓存 (如电脑与手机)public关于Expires同在Response Headers中同为控制缓存过期已被Cache-Control代替协商缓存根据资源标识判断资源标识在Response Headers中,有两种Last-Modified资源的最后修改时间Etag资源的唯一标识(一个字符串,类...

2021-11-22 15:15:53 1691

原创 rem理解

px,绝对长度单位,最常用em,相对长度单位,相对于父元素rem,相对长度单位,相对于根元素

2021-11-06 15:15:59 93

原创 line-height继承问题

写具体数值,如30px,则继承该值写比例,如3.5,则继承比例写百分比,如200%,则继承算出来的值(容易踩坑点)

2021-11-06 14:42:01 104

原创 移动端rem适配

Rem 布局适配如果需要使用rem单位进行适配,推荐使用以下两个工具:postcss-pxtorem是一款 PostCSS 插件,用于将 px 单位转化为 rem 单位(若为行内样式则无法生效) lib-flexible用于设置 rem 基准值...

2021-09-23 10:21:45 80

原创 图片懒加载

第一种则是延迟加载(使用定时器实现),如果用户在加载前离开页面则不加载第二种则是条件加载(如点击事件),触发事件之后才开始加载第三种则是可视区加载,仅加载用户可看到的区域(由监控滚动条来实现),会在看到图片前一定距离开始加载,保证用户下拉时刚好看到图片...

2021-09-18 14:32:50 64

原创 VueX注意事项

若通过自己手写计算属性取出Vuex中的数据,并且设计模式为多模块的话,取出getters的值与取出state的值有所不同,

2021-09-10 13:51:41 111

原创 解决跨域的办法

1.corscors解决跨域是由后端处理的 是真正意义上的解决跨域问题2.jsonpjsonp是前端解决跨域的一种方式,但实际开发中运用得并不多,通过script标签里src来传送数据,而且只能解决get请求。3.代理服务器这种解决跨域问题的方法是本文的主要研究介绍方法,通过开启一个代理服务器将数据先发送到代理服务器,再由代理服务器交给前端(不受同源策略的影响)下面介绍通过vue.cli配置代理服务器方式一的配置方式比较简洁方便 但有缺陷,这样只能配置一台代理服务器,实际开.

2021-09-08 17:50:41 117

原创 Vue绑定自定义事件的注意事项

当使用this.$refs绑定自定义事件时 如果不采用调用methods里的方法而是直接采用普通函数的话如下图此时的this则是触发自定义事件的组件而不是Vue实例 想要解决这个问题可以把方法写在methods中让Vue实例来管理或者采用箭头函数的形式(箭头函数会通过向上查找到Vue实例)...

2021-09-07 15:09:32 143

原创 为什么使用精简版的Vue

可以使打包后的体积小一点 并且模板解析器不应该出现在打包里

2021-09-03 10:12:03 78

原创 vue组件一个重要的内置关系

Vue组件的可以通过原型链访问到Vue原型上的属性方法即VueComponent.prototype.__proto__ === Vue.prototype 为true这样是为了让组件实例对象(vc) 可以访问到Vue原型上的属性和方法下图为其中的原理通过将VueComponent的原型对象指向Vue的原型对象再指向Object的这种方式来实现这个内置关系...

2021-09-02 11:54:40 158

原创 v-for中key的作用

Awesome Vue是官方整理的比较好用的库

2021-08-26 18:10:04 148

原创 Vue基础

命令式编码写一步动一步声明式编码diff算法将新旧进行对比 旧的由缓存取出 新的先生成虚拟DOM 再渲染成为真实DOM

2021-08-25 17:53:48 85

原创 关于Object.defineProperty()方法

可以通过这种方式实现数据代理 当有人读取时调用getter 当有人修改时调用setter

2021-08-25 16:12:51 63

空空如也

空空如也

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

TA关注的人

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