08 2022 档案
-
app不能同时出现两个同层template
摘要:记录问题1 : uniapp不能同时出现两个同层template, 如果出现就会两个都加载不出来 阅读全文
-
uniapp中动态设置image的src不生效
摘要:// imageSrc: '@/static/xxx.png', // 不生效 // imageSrc: '~@/static/xxx.png', // 不生效 imageSrc: '/static/xxx.png' // 有效 阅读全文
-
-webkit-line-clamp实现双行省略
摘要:-webkit-line-clamp用来限制在一个块元素显示的文本的行数。 为了实现该效果,它需要组合其他的WebKit属性。常见结合属性: 单行文本溢出省略 -webkit-line-clamp:1/2 display: -webkit-box; 必须结合的属性 ,将对象作为弹性伸缩盒子模型显示 阅读全文
-
white-space 与 word-break
摘要:word-break 使容器内容自动换行 1,word-break:break-all 默认截断 即容器边缘自动换行 2,word-wrap:break-word 单词为整体, 单词不可拆分换行 white-space 段落中的文本是否换行 1. normal 默认。空白会被浏览器忽略。 2.pre 阅读全文
-
uni-app引入iconfont失败:'./iconfont.eot?的错误
摘要:将css文件中的src地址修改就ok了 使用在线地址 阅读全文
-
App.vue里 引入样式报错
摘要:使用 @import url(); 报错, 格式没写对 @import url(common/common.css); 自动tab生成,路径不正确 /* @import '@/.common/common.css'; */ 正确格式 @import '~@/xxx/xxx' @import '../ 阅读全文
-
实现深拷贝函数 clone()
摘要:function deepClone(obj){ function isObject(o){ return (typeof o 'object' || typeof o 'function') && o !== null } if(!isObject(obj)){return obj} let ne 阅读全文
-
防抖节流函数
摘要:防抖函数 function deboune (fn, time){ let timer = null return function(){ clearTimeout(timer) timer = setTimeout(() => { fn.apply(this) },time) } } 节流函数 f 阅读全文
-
vue组件通信
摘要:父子: props parent childrens ref
attrs/$listeners 阅读全文 -
常用的数组方法
摘要:push 向数组末尾添加 2.pop 向数组末尾删除 3.shift 数组头部添加 4.unshift 数组头部删除 5.sort 排序 6.concat 合并 7.join 分隔 8.slice 截取 9.splice 截取 10.forEach 遍历 11.map 遍历 12.indexOf 包 阅读全文
-
合并两个对象的方法
摘要:使用assign Object.assign() 方法用于将所有可枚举属性的值从一个或多个源对象复制到目标对象。它将返回目标对象。 const a = { a: 1, b: 4 }; const b = { b: 2, c: 3 }; let obj1 = Object.assign(a, b); 阅读全文
-
合并数组的几种方法
摘要:1.push( 添加到数组的末尾 改变原数组 ) let temparr = [1,2,3,4]; temparr.push(5) console.log(temparr) //[ 1, 2, 3, 4, 5 ] 2.cancat( 不改变原数组。concat合并数组之后,返回值才是新数组,并且可以 阅读全文
-
浏览器渲染机制、重绘、重排(回流)
摘要:重排:当DOM的变化影响了元素的几何信息(DOM对象的位置和尺寸大小),浏览器需要重新计算元素的几何属性,将其安放在界面中的正确位置,这个过程叫做重排。 触发条件: 添加或者删除可见的DOM元素 元素尺寸改变——边距、填充、边框、宽度和高度 重绘:当一个元素的外观发生改变,但没有改变布局,重新把元素 阅读全文
-
输入一个URL到页面过程中发生了什么
摘要:1.首先在浏览器中输入URL 2.查找缓存:浏览器先查看浏览器缓存-系统缓存-路由缓存中是否有该地址页面,如果有则显示页面内容。如果没有则进行下一步。 3.DNS域名解析:浏览器向DNS服务器发起请求,解析该URL中的域名对应的IP地址。DNS服务器是基于UDP的,因此会用到UDP协议。 4.建立T 阅读全文
-
includes(), indexOf(), **, Math.pow(),
摘要:includes(value[, index]) 查找数组中是否包含一个指定的值,返回boolean. 区分大小写 indexOf(value) 查找某个指定的字符串值在字符串中首次出现的位置 如果没有找到匹配的字符串则返回 -1 ** 幂运算符 Math.pow() pow(x,y) 返回 x的y 阅读全文
-
setTimeout运行机制
摘要:setTimeout()函数 指定某个函数或某段代码在多少毫秒之后执行,返回一个整数,表示定时器timer的编号,可以用来取消该定时器 setTimeout()与setInterval运行机制: 将代码移出本次执行,等下一轮event loop时,再检查是否到时间,执行代码 意味着只有等所有同步代码 阅读全文
-
Unicode与 UTF-8 关系
摘要:Unicode为编码集 UTF-8是一种编码方式 阅读全文
-
浏览器的同源策略
摘要:同一 协议 域名 端口 为同源. 是浏览器最核心最基本的安全功能 阅读全文
-
什么是内存泄漏?
摘要:不再用到的内存,没有及时释放,就叫内存泄漏. 阅读全文
-
cookie与session区别
摘要:session是保存于服务端的一个用户标识.保存用户状态 cookie是保存用户信息,实现session的方式 阅读全文
-
instanceof, typeof, object.prototype.toString.call()
摘要:instanceof, typeof, object.prototype.toString.call() instanceof 用来判断某个构造函数的prototype属性所指向的对象是否存在于另外一个要检测对象的原型链上 点击查看代码 function instanceOf(target,type 阅读全文
-
强缓存与协商缓存
摘要:强缓存 强缓存主要使用 Expires、Cache-Control 两个头字段,当二者同时存在时 Cache-Control 的优先级更高。当命中强缓存时,客户端不会再发送请求,而是直接从缓存中读取内容,并返回 HTTP 状态码200。 Expires 优点: 在过期时间以内,为用户省了很多流量。 阅读全文
-
no-cache 和 no-store 的区别及304状态码
摘要:相同点: no-cache 和 no-store 用作控制缓存,被服务器通过响应头 Cache-Control 传递给客户端 no-store 永远都不要在客户端存储资源,永远都去原始服务器去获取资源。 no-cache 协商缓存 可以在客户端存储资源,每次都必须去服务端做新鲜度校验,来决定从服务端 阅读全文
-
使用Promise封装api(axios, wx.request, uni.request)
摘要:1. 封装uni.request 1 const BASE_URL = ' ' 2 export const myRequest = (options) => { 3 return new Promise(resolve, reject){ 4 uni.request({ 5 url : BASE_ 阅读全文
-
video组件src更新页面却不同步
摘要:1. 使用 watch 监听属性改变强制刷新 2. 绑定key,当key发生改变 video也会重新渲染 阅读全文