- 博客(10)
- 收藏
- 关注
原创 history模式&hash模式
hash模式是路由的默认模式,浏览器标识路径会有/#/标识,不太美观但是兼容性更好,会将文件的路径转换为资源访问,不会发送实际请求。history模式是路由的另一种模式,浏览器表示路径为/标识,比较美观但是兼容性没有hash优秀,会将文件发送实际请求,会产生404。路由的两种模式:history模式和hash模式。2、和后端人员配合校验页面路由展示不同数据。解决history兼容性方式。1、使用npm中间件。
2023-05-17 14:14:37
107
1
原创 前端的优化有哪些
如果当前时间小于Expires指定的时间,浏览器就会从缓存中直接获取相关的数据信息或html文件,如果当前时间大于Expires指定的时间,浏览器会向服务器发送请求来获取相关数据信息。无cookie域名的概念:当发送一个请求时,同时还要请求一张静态的图片和发送cookie时,服务器对于这些cookie不会做任何使用,也就是说这些cookie没什么用,没不要随请求一同发送。CDN即内容分发网络,可以使用户就近取得所需内容,解决网络拥挤的状况,提高用户访问网站的响应速度。3)图片的延迟加载,也叫做赖加载。
2023-05-16 16:55:48
154
1
原创 Vue(Vuex状态集中管理仓库)
注:在Vux3更新后,Vux也随之更新到Vuex@4的版本,Vux4版本只适用于Vue3,如果使用的Vue2,必须选择相应的Vuex3版本进行适配。,它采用集中式存储管理应用所有组件的状态,并以相应的规则保证状态以可预测的方式发生变化。3、actions响应在view上用户输入导致的状态变化。2、view以声明方式将state映射到视图。创建store文件以及index.js子文件。这种状态自管理应用分包含以下几个状态。Vuex是一个专为Vue.js开发的。导入Vuex(main.js)
2023-05-14 14:14:20
167
原创 Vue消息订阅与发布
概念:消息订阅与发布的设计思想可以理解为人类社会中的报纸订阅与发布,报纸订阅社先发布报纸,由人类的订阅者接收报纸的原理,整个任务分为订阅者和发布者,A组件想要接收B组件的消息内容,那么A组件此时的角色为订阅者,B组件为消息发布者,A组件订阅者需要提前订阅消息名称以及消息回调接收B组件的消息内容,方法为Pubsub.subscribe,向B组件发送订阅消息,B组件发布消息方法为Pubsub.publish,消息方法名必须一致,以下传递学生姓名案例。2、School组件创建订阅者消息。
2023-05-13 16:57:07
399
原创 Vue全局事件总线
概念:Vue全局事件总线的设计思路主要是创建一个可供全局使用的“bus”,当A组件想要收到B组件的数据时,A组件会创建一个自定义事件,所产生的回调也在A组件中,B组件通过调用A组件的自定义事件传递数据,回调的数据就传递给了A组件。3、在School响应自定义事件,调用实例中$on方法响应自定义事件“hello”,接收Student组件数据。1、在main.js创建安装并暴露一个“$bus”的全局事件总线-列车。2、在Student组件设置自定义事件,调用$bus发送数据。
2023-05-13 15:59:19
128
原创 Vue自定义事件
Vue的自定义事件主要实现子传父的数据传递,首先在App组件定义一个自定义事件方法,被定义的组件实例会挂载添加当前的自定义事件,当自定义事件被调用,所对应的事件就会被触发。以传递学生姓名为以下案例。3、定义案例触发sendStudentName(Student.vue)2、定义getstudentName函数方法(App.vue)4、调用实例上的自定义事件发送姓名(Student.vue)1、在所需组件创建自定义事件(App.vue)
2023-05-13 14:05:51
125
原创 Vue双向绑定原理。
3、实现一个解析器Compile,可以扫描和解析每个节点相关指令(v-model,v-on)等指令,如果节点存在v-model,v-on等指令。Vue的双向绑定原理利用ES5的Object.defineproperty进行数据劫持(监听)data属性的getter和setter,监测到数据的读取和改变,从而去通知订阅者,是否需要更新数据,若需要则会执行更新的函数执行最新数据。2、实现一个订阅者Watcher,每一个Watcher都绑定一个更新函数,Watcher可以收到属性的变化。
2023-05-12 11:30:55
73
1
原创 闭包的优缺点以及内存泄漏
当一个函数返回一个引流数据类型,当它被外界所接收或使用,就会形成一个不销毁的作用域,会一直存放在堆内存中,形成了保存的作用,但是无法被JavaScript垃圾回收机制所回收,比如一个函数对象或数组,无法释放其内存,就会造成内存泄漏。1、在退出当前函数时,讲不使用的局部变量赋值为Null,主动释放其内存。2、变量长期驻扎在内存中,不会被内存机制所回收,延长了变量的生命周期。大量使用闭包产生无法释放的内存,会造成内存泄漏。3、避免定义全局变量所造成的污染。2、避免变量的循环赋值和引用。
2023-05-12 11:06:12
151
1
原创 Vue2的响应式原理
Vue2的响应式原理主要采用了Object.defindproperty进行数据劫持,利用getter和setter两个方法对数据进行获取和设置,当数据被读取时,调用getter方法,当数据被修改或改变时,调用setter方法,去侦听数据的改变,同时会去通知wacher观察者模式,wacher观察者模式会自动触发render的当前组件,生成新的虚拟DOM树,Vue会遍历新旧DOM树的节点差异,并记录新节点,局部选渲染到真实DOM树上。
2023-05-10 14:50:23
114
1
原创 对于闭包的解析理解
注&:关于所有闭包是否都会造成内存泄漏,这个回答是不一定的,需要观测是否被外界所接收,如果被接收使用,一定会造成内存泄漏,如果没有被外界所接收,就不会造成内存泄漏。当一个函数返回一个引流数据类型,它被外界所接收后,会形成一个不销毁的作用域,它会一直存放在堆内存中,但是与此同时问题也会随之出现。概念:关于闭包的说法众说纷纭,个人对闭包的理解是一个函数返回另一个函数,闭包主要有两个作用:1:保护 2:保存。
2023-05-10 11:18:37
87
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人