webworker实战场景引言
js是单线程的,在主线程中执行js代码,会阻塞页面的渲染和其他事件的处理,但是当遇到大量CPU密集型的计算时,会导致页面卡顿,影响用户体验。
为什么使用webworker
webworker为js创建多线程环境,主线程开辟一个子线程,将计算的任务放在子线程中执行,计算完成后交回主线程,而不造成页面的卡顿。
web worker 分类
DedicatedWo...
原型链
js中对象之间通过原型(prototype或者__proto__)连接起来的机制,用户实现继承和查找
核心概念1. 原型对象(prototype)
每个js对象(除null外)都有一个原型对象,可以通过__proto__属性访问或Object.getPrototypeOf()方法获取
构造函数通过prototype属性来访问原型对象
2. 原型链
当访问一个对象的属性时,如果该对...
CSS选择器1.常用选择器1.1 通用选择器
将匹配文档的所有元素
1234*{ magin:0; padding:0;}
1.2 元素选择器
按照给定的节点名称,选择所有匹配的元素
123div{ color:red;}
1.3 类选择器
选择所有拥有给定类名的元素
123.box{ color:red;&...
防止接口重复请求
在软件开发过程中,前端需要向后端服务器发送请求,获取到响应的数据后,再将数据展示给用户。但是,在某些情况下,用户可能会多次点击某个按钮,导致多次发送相同的请求,从而浪费服务器的资源。
1.方案一:防抖和节流1.1 防抖1.2 节流2.方案二:axios请求拦截器和响应拦截器2.1 办法一
最简单的方法是在请求拦截器时,开启全局Loading(遮罩层),在响应拦截器时,关闭...
文件上传1.文件上传(Multer库)1.1 前端123456789101112131415161718192021222324252627282930<template> <input type="file" @change="handleFile"/> <button @click="handleUplo...
Sass 入门学习
Sass是一个Css的预处理器,在CSS基础上增加变量、嵌套、导入、混合等高级功能。
1 变量声明
Sass使用$符号声明变量(老版本!),为什么采用该符号?,CSS中并无他用,不会导致与现存或未来的css语法冲突。
1-1 变量的使用1234567891011$highlight-color: #F90;.header { color: $highlig...
微信小程序自定义组件
组件类似于页面,一个自定义组件由 json wxml wxss js 4个文件组成。要编写一个自定义组件,需要在json文件中component字段设为true。
123{ "component": true}
简单案例
1.components/my-components.json
1234{ &q...
1.选择自己要使用的图标加入购物车
2.将选择的图标加入项目
3.下载到本地
4.将下载文件解压放在static文件中,并调准基本样式
5.将样式在APP.vue中引入1234<style> /*每个页面公共css */ @import 'static/font/iconfont.css'</style>
6.使用1<text class=...