08 2021 档案

摘要:https 的 SSL 加密是在传输层实现的。 (1)http 和 https 的基本概念 http: 超文本传输协议,是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和应答的标准(TCP),用于从 WWW 服务器传输超文本到本地浏览器的传输协议,它可以使浏览器更加高效,使网络传输减 阅读全文
posted @ 2021-08-16 16:09 悠哉de小猫 阅读(185) 评论(0) 推荐(0)
摘要:computed 本质是一个惰性求值的观察者。 computed 内部实现了一个惰性的 watcher,也就是 computed watcher,computed watcher 不会立刻求值,同时持有一个 dep 实例。 其内部通过 this.dirty 属性标记计算属性是否需要重新求值。 当 c 阅读全文
posted @ 2021-08-16 15:31 悠哉de小猫 阅读(230) 评论(0) 推荐(0)
摘要:因为组件是可以复用的,JS 里对象是引用关系,如果组件 data 是一个对象,那么子组件中的 data 属性值会互相污染,产生副作用。 所以一个组件的 data 选项必须是一个函数,因此每个实例可以维护一份被返回对象的独立的拷贝。new Vue 的实例是不会被复用的,因此不存在以上问题。 阅读全文
posted @ 2021-08-16 15:22 悠哉de小猫 阅读(239) 评论(0) 推荐(0)
摘要:vue-router 可以通过 params 与 query 进行传参 params 是路由的一部分,必须要有。query 是拼接在 url 后面的参数,没有也没关系 params 不设置的时候,刷新页面或者返回参数会丢,query 则不会有这个问题 阅读全文
posted @ 2021-08-16 15:21 悠哉de小猫 阅读(114) 评论(0) 推荐(0)
摘要:Vuex 是一个专为 Vue.js 应用程序开发的全局状态管理模式。每一个 Vuex 应用的核心就是 store(仓库)。“store” 基本上就是一个容器,它包含着你的应用中大部分的状态 ( state )。 没有那么复杂的传参 Vuex主要用于登录 Vuex刷新怎么办 Vuex 数据不是持久,刷 阅读全文
posted @ 2021-08-16 15:21 悠哉de小猫 阅读(110) 评论(0) 推荐(0)
摘要: 阅读全文
posted @ 2021-08-16 15:11 悠哉de小猫 阅读(39) 评论(0) 推荐(0)
摘要:vue-router的作用就是通过改变URL,在不重新请求页面的情况下,更新页面视图。根据不同的url地址展示不同的页面或者数据。 vue-router 有 3 种路由模式:hash、history、abstract, hash: 使用 URL hash 值来作路由。支持所有浏览器,包括不支持 HT 阅读全文
posted @ 2021-08-16 15:11 悠哉de小猫 阅读(116) 评论(0) 推荐(0)
摘要:keep-alive 是 Vue 内置的一个组件,可以使被包含的组件保留状态,避免重新渲染 ,其有以下特性: 一般结合路由和动态组件一起使用,用于缓存组件; 提供 include 和 exclude 属性,两者都支持字符串或正则表达式, include 表示只有名称匹配的组件会被缓存,exclude 阅读全文
posted @ 2021-08-16 15:11 悠哉de小猫 阅读(193) 评论(0) 推荐(0)
摘要:Object.defineProperty 只能劫持对象的属性,因此我们需要对每个对象的每个属性进行遍历。Vue 2.x 里,是通过 递归 + 遍历 data 对象来实现对数据的监控的,如果属性值也是对象那么需要深度遍历,显然如果能劫持一个完整的对象是才是更好的选择。 Proxy 可以劫持整个对象, 阅读全文
posted @ 2021-08-16 14:50 悠哉de小猫 阅读(241) 评论(0) 推荐(0)
摘要:前后端分离的权限管理基本就以下两种方式: 后端生成当前用户相应的路由后由前端(用 Vue Router 提供的API)addRoutes 动态加载路由。 前端写好所有的路由,后端返回当前用户的角色,然后根据事先约定好的每个角色拥有哪些路由对角色的路由进行分配。 第一种,完全由后端控制路由,但这也意味 阅读全文
posted @ 2021-08-16 14:50 悠哉de小猫 阅读(531) 评论(0) 推荐(0)
摘要:onload()和document.ready()的区别有以下两点: 1、我们可以在页面中使用多个document.ready(),但只能使用一次onload()。 2、document.ready()函数在页面DOM元素加载完以后就会被调用,而onload()函数则要在所有的关联资源(包括图像、音 阅读全文
posted @ 2021-08-16 14:50 悠哉de小猫 阅读(158) 评论(0) 推荐(0)
摘要:Vue 中 key 的作用是:key 是为 Vue 中 vnode 的唯一标记,通过这个 key,我们的 diff 操作可以更准确、更快速 更准确:因为带 key 就不是就地复用了,在 sameNode 函数 a.key b.key 对比中可以避免就地复用的情况。所以会更加准确。 更快速:利用 ke 阅读全文
posted @ 2021-08-16 11:29 悠哉de小猫 阅读(449) 评论(0) 推荐(0)
摘要:1)hash 模式的实现原理 早期的前端路由的实现就是基于 location.hash 来实现的。其实现原理很简单,location.hash 的值就是 URL 中 # 后面的内容。比如下面这个网站,它的 location.hash 的值为 '#search': hash 路由模式的实现主要是基于下 阅读全文
posted @ 2021-08-16 11:29 悠哉de小猫 阅读(182) 评论(0) 推荐(0)
摘要:computed: 是计算属性,依赖其它属性值,并且 computed 的值有缓存,只有它依赖的属性值发生改变,下一次获取 computed 的值时才会重新计算 computed 的值; watch: 更多的是「观察」的作用,类似于某些数据的监听回调 ,每当监听的数据变化时都会执行回调进行后续操作; 阅读全文
posted @ 2021-08-16 11:29 悠哉de小猫 阅读(178) 评论(0) 推荐(0)
摘要:1.不要在模板里面写过多表达式 2.循环调用子组件时添加key 3.频繁切换的使用v-show,不频繁切换的使用v-if 4.尽量少用float,可以用flex 5.按需加载,可以用require或者import()按需加载需要的组件 6.路由懒加载 7. 对于图片过多的页面,为了加速页面加载速度, 阅读全文
posted @ 2021-08-16 11:23 悠哉de小猫 阅读(180) 评论(0) 推荐(0)
摘要:1. 优化图片 2. 图像格式的选择(GIF:提供的颜色较少,可用在一些对颜色要求不高的地方) 3. 优化 CSS(压缩合并 css,如 margin-top, margin-left...) 4. 网址后加斜杠(如 www.campr.com/目录,会判断这个目录是什么文件类型,或者是目录。) 5 阅读全文
posted @ 2021-08-16 11:23 悠哉de小猫 阅读(151) 评论(0) 推荐(0)
摘要:形式上:hash模式url里面永远带着#号,开发当中默认使用这个模式。如果用户考虑url的规范那么就需要使用history模式,因为history模式没有#号,是个正常的url,适合推广宣传;功能上:比如我们在开发app的时候有分享页面,那么这个分享出去的页面就是用vue或是react做的,咱们把这 阅读全文
posted @ 2021-08-16 11:23 悠哉de小猫 阅读(93) 评论(0) 推荐(0)
摘要:为什么要组件化开发 有时候页面代码量太大,逻辑太多或者同一个功能组件在许多页面均有使用,维护起来相当复杂,这个时候,就需要组件化开发来进行功能拆分、组件封装,已达到组件通用性,增强代码可读性,维护成本也能大大降低 组件化开发的优点 很大程度上降低系统各个功能的耦合性,并且提高了功能内部的聚合性。这对 阅读全文
posted @ 2021-08-15 20:35 悠哉de小猫 阅读(203) 评论(0) 推荐(0)
摘要:全局守卫 router.beforeEach 全局前置守卫 进入路由之前 router.beforeResolve 全局解析守卫(2.5.0+) 在beforeRouteEnter调用之后调用 router.afterEach 全局后置钩子 进入路由之后 // main.js 入口文件 import 阅读全文
posted @ 2021-08-15 20:32 悠哉de小猫 阅读(139) 评论(0) 推荐(0)
摘要:(1)props / $emit 适用 父子组件通信 这种方法是 Vue 组件的基础,相信大部分同学耳闻能详,所以此处就不举例展开介绍。 (2)ref 与 $parent / $children 适用 父子组件通信 ref:如果在普通的 DOM 元素上使用,引用指向的就是 DOM 元素;如果用在子组 阅读全文
posted @ 2021-08-15 20:26 悠哉de小猫 阅读(135) 评论(0) 推荐(0)
摘要:SPA( single-page application )仅在 Web 页面初始化时加载相应的 HTML、JavaScript 和 CSS。一旦页面加载完成,SPA 不会因为用户的操作而进行页面的重新加载或跳转;取而代之的是利用路由机制实现 HTML 内容的变换,UI 与用户的交互,避免页面的重新 阅读全文
posted @ 2021-08-15 19:58 悠哉de小猫 阅读(219) 评论(0) 推荐(0)
摘要:vue采用数据劫持结合发布者-订阅者模式的方式,通过Object.defineProperty劫持data属性的setter,getter,在数据变动时发布消息给订阅者,触发相应的监听回调。 MVVM M - Model,Model 代表数据模型,也可以在 Model 中定义数据修改和操作的业务逻辑 阅读全文
posted @ 2021-08-15 19:57 悠哉de小猫 阅读(134) 评论(0) 推荐(0)
摘要:1 每个生命周期适合哪些场景? 2 生命周期钩子的一些使用方法: 3 beforecreate : 可以在这加个loading事件,在加载实例时触发 4 created : 初始化完成时的事件写在这里,如在这结束loading事件,异步请求也适宜在这里调用 5 mounted : 挂载元素,获取到D 阅读全文
posted @ 2021-08-15 19:53 悠哉de小猫 阅读(93) 评论(0) 推荐(0)
摘要:1、网站的代码 优化网站的代码,代码的布局与网页文件的大小是有关系的,网站代码结构要清晰。 2、图片的处理 网站存在大量的图片,图片没有优化处理过,造成网站加载速度缓慢。 3、减少网络请求次数 提高网页打开速度,就要减少HTTP请求数。 4、全站静态化 网站采用静态化,减少了读取数据库的操作,不占用 阅读全文
posted @ 2021-08-15 19:49 悠哉de小猫 阅读(610) 评论(0) 推荐(0)
摘要:1 1.客户端使用用户名跟密码请求登录 2 2.服务端收到请求,去验证用户名与密码 3 3.验证成功后,服务端会签发一个 token 并把这个 token 发送给客户端 4 4.客户端收到 token 以后,会把它存储起来,比如放在 cookie 里或者 localStorage 里 5 5.客户端 阅读全文
posted @ 2021-08-15 19:48 悠哉de小猫 阅读(79) 评论(0) 推荐(0)
摘要: 阅读全文
posted @ 2021-08-15 19:47 悠哉de小猫 阅读(49) 评论(0) 推荐(0)
摘要:GET:一般用于信息获取,使用 URL 传递参数,对所发送信息的数量也有限制,一般在 2000 个字符 POST:一般用于修改服务器上的资源,对所发送的信息没有限制 在以下情况中,请使用 POST 请求: 1. 无法使用缓存文件(更新服务器上的文件或数据库) 2. 向服务器发送大量数据(POST 没 阅读全文
posted @ 2021-08-15 19:44 悠哉de小猫 阅读(699) 评论(0) 推荐(0)
摘要:安全性: Session 比 Cookie 安全,Session 是存储在服务器端的,Cookie 是存储在客户端的。 存取值的类型不同:Cookie 只支持存字符串数据,想要设置其他类型的数据,需要将其转换成字符串,Session 可以存任意数据类型。 有效期不同: Cookie 可设置为长时间保 阅读全文
posted @ 2021-08-15 19:44 悠哉de小猫 阅读(63) 评论(0) 推荐(0)
摘要:HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,要比http协议安全。 1、https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。 2、http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。 3、http和https使 阅读全文
posted @ 2021-08-15 19:43 悠哉de小猫 阅读(174) 评论(0) 推荐(0)
摘要:强缓存:不会向服务器发送请求,直接从缓存中读取资源,在chrome控制台的Network选项中可以看到该请求返回200的状态码,并且Size显示from disk cache或from memory cache。强缓存可以通过设置两种 HTTP Header 实现:Expires 和 Cache-C 阅读全文
posted @ 2021-08-15 19:43 悠哉de小猫 阅读(48) 评论(0) 推荐(0)
摘要:1 2xx:表示成功 2 200 OK 表示所有东西都正常 3 204 表示请求成功,但是服务端没有内容给你 4 3xx: 表示重定向 5 301 永久重定向(当访问一个永久重定向的网站的时候,一个域名被指向一个其他网站,且是永久的) 6 302 临时重定向 7 304 走缓存(服务端觉得你之前请求 阅读全文
posted @ 2021-08-15 19:42 悠哉de小猫 阅读(209) 评论(0) 推荐(0)
摘要:浏览器根据URL进行DNS查询 首先从DNS缓存中查询 若未在缓存中找到,则不停的向上一级级请求DNS服务器 取得IP地址,建立TCP连接 构造HTTP请求报 添加一些HTTP首部 根据同源政策添加cookie 在TCP连接上发送HTTP报文,等待响应 服务器处理HTTP请求报文,返回响应HTTP响 阅读全文
posted @ 2021-08-15 19:42 悠哉de小猫 阅读(62) 评论(0) 推荐(0)
摘要:(1)cookie数据存放在客户的浏览器上,session数据放在服务器上。(2)cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗考虑到安全应当使用session。(3)session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能 考虑到减轻服务 阅读全文
posted @ 2021-08-15 19:41 悠哉de小猫 阅读(52) 评论(0) 推荐(0)
摘要:GET请求的参数是放在请求的URL中,而POST方法是放在请求体中 GET请求在URL中传递参数时会有长度限制,而POST无限制(不是绝对的,只是相对来说) GET请求会被浏览器主动缓存,而POST不会 GET请求的参数会保存在浏览器中,而POST的参数不会保存在浏览器中 阅读全文
posted @ 2021-08-15 19:40 悠哉de小猫 阅读(57) 评论(0) 推荐(0)
摘要:1 null是一个表示"无"的对象,undefined是一个表示"无"的原始值 2 undefined: 3 (1)变量被声明了,但没有赋值时,就等于undefined。 4 (2) 调用函数时,应该提供的参数没有提供,该参数等于undefined。 5 (3)对象没有赋值的属性,该属性的值为und 阅读全文
posted @ 2021-08-15 19:39 悠哉de小猫 阅读(365) 评论(0) 推荐(0)
摘要:1 全局中的函数和全局变量可以看作是window的方法和属性所以全局函数中的this指向window;方法中的this指向该方法所指的对象; 2 this指向函数运行时所属的对象 3 this不指函数本身,也不指函数所对的作用域,指向调用此函数的对象; 4 this指向分为六种情况: 5 1)全局函 阅读全文
posted @ 2021-08-15 19:37 悠哉de小猫 阅读(533) 评论(0) 推荐(0)
摘要:1 // 创建新节点 2 createDocumentFragment() //创建一个DOM片段 3 createElement() //创建一个具体的元素 4 createTextNode() //创建一个文本节点 5 // 添加、移除、替换、插入 6 appendChild() 7 remov 阅读全文
posted @ 2021-08-15 19:37 悠哉de小猫 阅读(305) 评论(0) 推荐(0)
摘要:1 // client offset scroll width height left top 2 // clientWidth 内容宽度 + 左右padding 3 // offsetWidth clientWidth + 左右 border 4 // offsetTop 当前盒子的外边框到上级参 阅读全文
posted @ 2021-08-15 19:36 悠哉de小猫 阅读(64) 评论(0) 推荐(0)
摘要:类的继承在几年前是重点内容,有n种继承方式各有优劣,es6普及后越来越不重要,那么多种写法有点『回字有四样写法』的意思,如果还想深入理解的去看红宝书即可,我们目前只实现一种最理想的继承方式。 1 function Parent(name) { 2 this.parent = name 3 } 4 P 阅读全文
posted @ 2021-08-15 19:35 悠哉de小猫 阅读(167) 评论(0) 推荐(0)
摘要:this 的指向,始终坚持一个原理:this 永远指向最后调用它的那个对象 改变 this 的指向我总结有以下几种方法: 使用 ES6 的箭头函数 在函数内部使用 _this = this 使用 apply、call、bind new 实例化一个对象 全局作用域下的this指向window 如果给元 阅读全文
posted @ 2021-08-15 19:35 悠哉de小猫 阅读(120) 评论(0) 推荐(0)
摘要:new操作符做了这些事: 它创建了一个全新的对象 它会被执行[[Prototype]](也就是__proto__)链接 它使this指向新创建的对象 通过new创建的每个对象将最终被[[Prototype]]链接到这个函数的prototype对象上 如果函数没有返回对象类型Object(包含Func 阅读全文
posted @ 2021-08-15 19:32 悠哉de小猫 阅读(132) 评论(0) 推荐(0)
摘要:1 简单来说闭包就是在函数里面声明函数,本质上说就是在函数内部和函数外部搭建起一座桥梁,使得子函数可以访问父函数中所有的局部变量,但是反之不可以,这只是闭包的作用之一,另一个作用,则是保护变量不受外界污染,使其一直存在内存中,在工作中我们还是少使用闭包的好,因为闭包太消耗内存,不到万不得已的时候尽量 阅读全文
posted @ 2021-08-15 19:29 悠哉de小猫 阅读(94) 评论(0) 推荐(0)
摘要:JS中的作用域分为两种: 函数都有自己的作用域, 全局作用域和局部作用域(局部变量)还有es6中的块级作用域。 函数作用域中定义的变量,只能在函数中调用,外界无法访问。 没有块级作用域导致了if或for这样的逻辑语句中定义的变量可以被外界访问, 因此ES6中新增了let和const命令来进行块级作用 阅读全文
posted @ 2021-08-15 19:28 悠哉de小猫 阅读(142) 评论(0) 推荐(0)
摘要:1.function声明 1 //ES5 2 function getSum(){} 3 function (){}//匿名函数 4 //ES6 5 ()=>{} 2.函数表达式 1 //ES5 2 var getSum=function(){} 3 //ES6 4 let getSum=()=>{ 阅读全文
posted @ 2021-08-15 19:25 悠哉de小猫 阅读(129) 评论(0) 推荐(0)
摘要:typeof是一个运算符,其有两种使用方式: (1)typeof(表达式); (2)typeof 变量名;返回值是一个字符串,用来说明变量的数据类型; 所以可以用此来判断number, string, object, boolean, function, undefined, symbol 这七种类 阅读全文
posted @ 2021-08-10 17:46 悠哉de小猫 阅读(125) 评论(0) 推荐(0)
摘要:表单新增的控件 1 表单中新增的控件(type属性) 2 email: 提交表单时检测值是否是一个电子邮件格式 3 url: 提交表单时检测值是否是一个url格式 4 date: 年-月-日格式的控件 5 time: 时:分格式的控件 6 datetime: 年-月-日 时:分 格式的控件(UTC时 阅读全文
posted @ 2021-08-10 17:40 悠哉de小猫 阅读(260) 评论(0) 推荐(0)
摘要:1.router是VueRouter的一个对象,通过Vue.use(VueRouter)和VueRouter构造函数得到一个router的实例对象,这个对象中是一个全局的对象,他包含了所有的路由包含了许多关键的对象和属性。 举例:history对象 $router.push({path:'home' 阅读全文
posted @ 2021-08-08 19:12 悠哉de小猫 阅读(195) 评论(0) 推荐(0)
摘要:什么是生命周期? 1.Vue实例从创建到销毁的这一过程叫做vue的生命周期.2.过程:开始创建—>初始化数据—>编辑模板—>挂载DOM($el) >UI渲染—>数据更新 >卸载 Vue的生命周期分为四个阶段 大家看这张图: 生命周期四大阶段:1.初始化阶段:beforeCreate:实例刚创建完成, 阅读全文
posted @ 2021-08-05 10:54 悠哉de小猫 阅读(6974) 评论(0) 推荐(0)
摘要:JavaScript的数据类型1.基本数据类型number string boolean null undefined 2.引用数据类型 (简单来说,就是能用new关键字创建的都是引用数据类型)array(数组) function(函数) regexp(正则) object(对象) 栈与堆栈(sta 阅读全文
posted @ 2021-08-04 20:08 悠哉de小猫 阅读(333) 评论(0) 推荐(0)
摘要:computed 计算属性1.computed 它是一个计算属性,会计入缓存中,优先从缓存中加载2.只有依赖数据发生改变,才重新计算3.如果一个属性是有多个属性计算而来,这个属性依赖多个属性(也就是多对一或者一对多),一般用computed4.如果computed计算属性是一个函数,那么会触发get 阅读全文
posted @ 2021-08-04 20:06 悠哉de小猫 阅读(68) 评论(0) 推荐(0)