01 2023 档案
vue的异步组件
摘要:异步组件 异步组件:可以在首页加载之前先加载的组件,主要是做性能优化,提高用户体验 一、基本用法 在大型项目中,我们可能需要拆分应用为更小的块,并仅在需要时再从服务器加载相关组件。Vue 提供了 defineAsyncComponent 方法来实现此功能: import { defineAsyncC
阅读全文
async/await
摘要:一、对async/await 的理解 async 函数执行会返回一个 Promise 对象,如果在函数中 return 一个直接量,async 会把这个直接量通过 Promise.resolve() 封装成 Promise 对象。 那如果 async 函数没有返回值,它会返回 Promise.res
阅读全文
ES6的Promise用法
摘要:一、是什么: promise是异步编程的一种解决方案,它是一个对象,可以获取异步操作的信息,它的出现改善了异步编程,避免了地狱回调,它比传统的解决方案回调函数和事件更合理和更强大 二、promise的三种状态: pending进行中,fulfilled已成功,rejected已失败 特点 对象的状态
阅读全文
cookie、sessionStorage和localStorage的区别
摘要:一、cookie、sessionStorage和localStorage的区别 1、相同点:都是保存在浏览器端、而且是同源的 2、区别: Cookie Session Storage local Storage 数据有效时间不同 可自己设置,默认到浏览器关闭 浏览器关闭之前有效 始终有效,窗口或浏览
阅读全文
Javascript中0.1+0.2===0.3?怎么解决这个问题?
摘要:一、问题分析 计算机存储以二进制的方式,而0.1 在二进制中是无限循环的一个数字,所以会出现裁剪,精度丢失会出现,0.100000000000000002 0.1,0.200000000000000002 0.2 // true 这两加起来肯定不等于0.3 二、解决方法 parseFloat((0.
阅读全文
javascript的防抖与节流
摘要:一、节流 一段时间内只能触发一次,如果这段时间内触发多次事件,只有第一次生效会触发回调函数,一段时间过后才能再次触发(一定时间内只执行第一次) 应用场景 1、鼠标连续不断地触发某事件(如点击),只在单位时间内只触发一次; 2、懒加载时要监听计算滚动条的位置,但不必每次滑动都触发,可以降低计算的频率,
阅读全文
JavaScript事件循环
摘要:一、是什么 先,JavaScript是一门单线程的语言,意味着同一时间内只能做一件事,但是这并不意味着单线程就是阻塞,而实现单线程非阻塞的方法就是事件循环 在JavaScript中,所有的任务都可以分为 同步任务:立即执行的任务,同步任务一般会直接进入到主线程中执行 异步任务:异步执行的任务,比如a
阅读全文
修改Element - plus的样式
摘要:把显示在浏览器上的对应css选择器全部写上,并且添加 !important </script> <style lang='scss' scoped> //修改 element plus ::v-deep .el-breadcrumb__inner a, .el-breadcrumb__inner.i
阅读全文
ajax的原理是什么?如何实现?
摘要:一、是什么 AJAX全称(Async Javascript and XML) 即异步的JavaScript 和XML,是一种创建交互式网页应用的网页开发技术,可以在不重新加载整个网页的情况下,与服务器交换数据,并且更新部分网页 Ajax的原理简单来说通过XmlHttpRequest对象来向服务器发异
阅读全文
new操作符具体干了什么
摘要:一:是什么 在JavaScript中,new操作符用于创建一个给定构造函数的实例对象 例子 function Person(name, age){ this.name = name; this.age = age; } Person.prototype.sayName = function () {
阅读全文
JavaScript是怎样实现继承的?
摘要:一、是什么 继承(inheritance)是面向对象软件技术当中的一个概念。 如果一个类别B“继承自”另一个类别A,就把这个B称为“A的子类”,而把A称为“B的父类别”也可以称“A是B的超类” 继承的优点 继承可以使得子类具有父类别的各种属性和方法,而不需要再次编写相同的代码 在子类别继承父类别的同
阅读全文
JavaScript原型和原型链?有什么特点?
摘要:一、原型 JavaScript 常被描述为一种基于原型的语言——每个对象拥有一个原型对象 当试图访问一个对象的属性时,它不仅仅在该对象上搜寻,还会搜寻该对象的原型,以及该对象的原型的原型,依次层层向上搜索,直到找到一个名字匹配的属性或到达原型链的末尾 准确地说,这些属性和方法定义在Object的构造
阅读全文
什么是作用域和作用域链?
摘要:一、作用域 作用域,即变量(变量作用域又称上下文)和函数生效(能被访问)的区域或集合 换句话说,作用域决定了代码区块中变量和其他资源的可见性 举个例子 function myFunction() { let inVariable = "函数内部变量"; } myFunction();//要先执行这个
阅读全文
闭包 闭包的使用场景
摘要:一、是什么 一个函数和对其周围状态(lexical environment,词法环境)的引用捆绑在一起(或者说函数被引用包围),这样的组合就是闭包(closure) 也就是说,闭包让你可以在一个内层函数中访问到其外层函数的作用域 在 JavaScript中,每当创建一个函数,闭包就会在函数创建的同时
阅读全文
深拷贝与浅拷贝的区别?如何实现一个深拷贝?
摘要:一、数据类型存储 JavaScript中存在两大数据类型: 基本类型 引用类型 基本类型数据保存在在栈内存中 引用类型数据保存在堆内存中,引用数据类型的变量是一个指向堆内存中实际对象的引用,存在栈中 二、浅拷贝 浅拷贝,指的是创建新的数据,这个数据有着原始数据属性值的一份精确拷贝 如果属性是基本类型
阅读全文
JavaScript字符串的常用方法
摘要:一、操作方法 我们也可将字符串常用的操作方法归纳为增、删、改、查,需要知道字符串的特点是一旦创建了,就不可变 增 这里增的意思并不是说直接增添内容,而是创建字符串的一个副本,再进行操作 除了常用+以及${}进行字符串拼接之外,还可通过concat concat 用于将一个或多个字符串拼接成一个新字符
阅读全文
项目部署上线流程
摘要:一、在项目(vue/react)开发完成之后 就可以进行构建打包 将项目打包dist文件: 无论是vue或者react或者是其他的框架的代码 最后都是要打包。打包的生成的文件都是 html + css+ js+静态资源 vue 和 react 和vite的项目都是 执行 npm run build来
阅读全文
数组的常用方法有哪些?
摘要:一、操作方法 数组基本操作可以归纳为 增、删、改、查,需要留意的是哪些方法会对原数组产生影响,哪些方法不会 1、增 下面前三种是对原数组产生影响的增添方法,第四种则不会对原数组产生影响 push() unshift() splice() concat() push() push()方法接收任意数量的
阅读全文
什么是Http? http和https的区别
摘要:一、HTTP HTTP (HyperText Transfer Protocol),即超文本运输协议,是实现网络通信的一种规范 在计算机和网络世界有,存在不同的协议,如广播协议、寻址协议、路由协议等等...... 而HTTP是一个传输协议,即将数据由A传到B或将B传输到A,并且 A 与 B 之间能够
阅读全文
vue3和vue2的区别
摘要:一、Vue3介绍 Vue 新版本的理念成型于 2018 年末,当时 Vue 2 的代码库已经有两岁半了。比起通用软件的生命周期来这好像也没那么久,但在这段时期,前端世界已经今昔非比了 在更新(和重写)Vue 的主要版本时,主要考虑两点因素:首先是新的 JavaScript 语言特性在主流浏览器中的受
阅读全文
Vue中组件和插件的区别
摘要:一、组件是什么 1:组件的定义: 组件就是把图形、非图形的各种逻辑均抽象为一个统一的概念(组件)来实现开发的模式,在Vue中每一个.vue文件都可以视为一个组件 2:组件的优势 降低整个系统的耦合度,在保持接口不变的情况下,我们可以替换不同的组件快速完成需求,例如输入框,可以替换为日历、时间、范围等
阅读全文
Vue搭建项目的完整流程 如何搭建一个完整的vue项目 vue项目架构
摘要:vue项目架构 技术栈:vue3、vue-router 、vuex(和pinia)、element plus 、axios、ts、sass 1、安装vue3 脚手架+ ts vue create admin 2、分析目录结构 node_modules =>依赖包 public => 静态文件 src
阅读全文
ES6的新特性有哪些
摘要:1、let、const 2、模板字符串 3、箭头函数 4、解构赋值 5、promise 6、数组的新方法 7、对象的新方法 8、class类 9、新增Set、Map两种数据结构 10、proxy
阅读全文
React Hooks的理解,React Hooks有哪些,解决了什么问题
摘要:一、是什么 Hook 是 React 16.8 的新增特性。它可以让你在不编写 class 的情况下使用 state 以及其他的 React 特性 至于为什么引入hook,官方给出的动机是解决长时间使用和维护react过程中常遇到的问题,例如: 难以重用和共享组件中的与状态相关的逻辑 逻辑复杂的组件
阅读全文
vue组件的对象式写法,vue中的h函数
摘要:render:将虚拟dom转为真实dom h函数:创建的是vnode,也可以成为createVnode函数 语法:h(元素名称 ,这个元素的数据,子集) 第一个参数:可以为一个html标签,一个组件,一个异步组件,或者是一个函数式组件。 第二个参数:{ Object } Props,与attribu
阅读全文
Vue组件之间的通信方式都有哪些?
摘要:一、组件间通信的概念 我们通常把组件间通信这个词进行拆分 组件 通信 都知道组件是vue最强大的功能之一,vue中每一个.vue我们都可以视之为一个组件通信指的是发送者通过某种媒体以某种格式来传递信息到收信者以达到某个目的。广义上,任何信息的交通都是通信组件间通信即指组件(.vue)通过某种方式来传
阅读全文
Vue 注册全局组件的方式
摘要:一、语法:Vue的实例.component("组件名称",组件) 1、方式一:这个组件就是 vue文件 import { createApp,h } from 'vue' //引入 创建vue实例的api import App from './App.vue' //引入 根组件 let app =
阅读全文
Vue3 中的组件 provide和inject 传值、获取组件实例的方法getCurrentInstance()
摘要:一、 provide和inject(依赖注入) 1:在父级组件中提供数据 语法:provide('提供给子组件的变量名',提供给子组件的数据) 2: 在子级组件中获取收据 语法:let nums=inject('父组件传过来的变量名') 二、在Vue3中获取组件实例的方法getCurrentInst
阅读全文
Vue3中的响应式api
摘要:一、setup文件的认识 特点1:script 中间的内容就是一个对象 特点2:script 在第一层 定义的方法 或者 变量 => 就是这个对象 属性 => 顶层的绑定回被暴露给模板(模板可以直接使用这个变量) 特点3:setup 默认执行生命周期beforeCreate created 注意:这
阅读全文
require.context 自动引入指定目录下的文件、组件、reducer
摘要:1、 语法:let webpacks = require.context (directory,useSubdirectories,regExp) (directory:"文件路径",useSubdirectories:"布尔值",regExp:"正则表达式") // 返回值 是webpack实例
阅读全文
React中组件之间是如何通信的 react的组件通信方式有哪些
摘要:一、是什么 通信指的是发送者通过某种媒体 以某种格式来传递信息 到收信者以达到某个目的,广义上,任何信息的传递都是通信 二、如何通信? 组件传递的方式有很多种,根据传送者和接收者可以分为如下: 父组件向子组件传递 子组件向父组件传递 兄弟组件之间的通信 父组件向后代组件传递 非关系组件传递 1、父组
阅读全文
react 项目的性能优化
摘要:react 项目的性能优化有哪些? 1、react 模块化处理 就是将react内容进行模块化划分,一个模块一个组件,react更新机制是组件重新更新 2、在react项目中更新数据,不要直接将 useState方法 更新方法放到模块当中:避免使用内联函数 在编译模块的时候使用,react会将 模块
阅读全文
uniapp 分享 绘制海报
摘要:小程序分享海报,由于微信的限制,暂时无法直接分享小程序到朋友圈(虽然微信开发者工具基础库从2.11.3开始支持分享小程序到朋友圈,但目前仍处于Beta中)所以生成海报仍然还是主流方式 主体思路:将设计稿通过canvas生成图片,然后保存到用户相册,用户再通过图片分享小程序 属性说明可选值 type
阅读全文
微信小程序 添加域名
摘要:1、不校验合法域名、web-view (业务域名)、TLS版本以及 HTTPS证书 2、小程序上的请求=》服务器的根地址=》都需要添加微信公众平台(否则会无法发送请求,导致代码报错)
阅读全文