07 2025 档案
摘要:props 主要用于父与子,子与父之间通信 自定义事件(defineEmit) mitt 任意组件通信 $attrs 爷孙之间通信,配合v-bind v-model $refs和$parent 父与子、子与父之间通信 provide和inject 爷孙之间通信
阅读全文
摘要:插槽分为三种: 默认插槽 具名插槽 作用域插槽 插槽的作用其实就是站位,用于组件的复用,具名插槽可以指定插入内容的位置 具名插槽的两种写法:#name、v-slot:name <template #s2> <ul> <li v-for="index in item.detail" :key="ind
阅读全文
摘要:两种传递方式:query、params query传递的参数会在路由上显示,不美观,可以传递简单数据类型、简单数组,无法传递对象, 如果想要传递对象/对象数组 <li v-for="item in menuList" :key="item.menu"> <RouterLink :to="{ name
阅读全文
摘要:当二级路由的信息是由一级路由使用query参数传递过来,同时三级路由的信息由二级路由传递过来,那么在点击二级路由切换三级路由时,会出现二级路由信息丢失,因为query的值在点击二级路由时被覆盖 const route = useRoute() const { query } = toRefs(rou
阅读全文
摘要:三者都是实现异步操作,其中async和await是基于promise的语法糖, promise提供了 then()来逐步执行操作 cathch()来捕获运行中发生的错误 finally()来执行一些无论如何都会执行的代码,如注销某些行为 async和await同时存在,通过async定义一个异步函数
阅读全文
摘要:将深层次数组变为一层数组,两种方法的思路其实感觉区别不大,期待后面有新思路 const array = [ [[10,11]], 1, [2, 3, 4], [[5, 6]], [[[7, 8, 9]]] ] /** * 迭代 + concat() * @returns Array */ Array
阅读全文
摘要:1. 
阅读全文
摘要:导入导出模块要将script标签的type设置为module,导入形式有导入有默认导出的模块,es6的方法导入 或者导入js文件 import './spark-md5.min.js'
阅读全文
摘要:<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <input type="file" class="file"> </body> <script
阅读全文
摘要:1.在对spark-md5模块的引入不断出现问题,一开始在html文件中直接将script模块改为module进行import,失败,后面在外部js文件中引入,可以使用node进行运行js文件,但再引入到html中报错,使用ai调教了好久,发现ai果然还是差点意思,后来在查看别人源码中得到灵感,将s
阅读全文
摘要:传统的文件上传会面临以下问题: 请求超时:HTTP请求通常有超时限制,大文件上传时间过长容易导致请求超时。 网络不稳定:网络波动、中断可能导致上传失败,用户体验差。 服务器压力:单个大文件上传会长时间占用服务器资源。 用户体验:上传失败后需要重新上传整个文件,十分耗时 针对以上问题,出现了分片上传和
阅读全文
摘要:基本使用和各种中间件、session、跨域问题 import express from 'express' import querystring from 'querystring' import session from 'express-session' import cors from 'co
阅读全文
摘要:动态路由,使用 ()=>import ('./Home.vue') 导入,按需加载
阅读全文
摘要:1.HTML原生支持 <img src="example.jpg" alt="示例图片" loading="lazy"> 优点: 实现简单,不需要额外js代码 浏览器内部优化、性能较好 缺点: 兼容性问题:部分旧版本浏览器(如IE)不支持。 2.使用IntersectionObserver API
阅读全文
摘要:目前用的是原生开发,后面搭建的时候改写一下vue3,原生开发的时候要注意对dom树操作的顺序
阅读全文
摘要:通过数组索引的增加来代表单位的递增,与使用if不断判断相比,看起来就很优雅 function formatSizeUnits(unit){ const units = ['kB','MB','GB','TB','PB'] let unitIndex = 0 while(unit>=1024 && u
阅读全文
摘要:使用beginPath()开始一条新路径, moveTo()移动到某一点, lineTo()连接到某一点, strokeStyle()设置连线颜色, stroke()连接该路径的点, closePath()闭合该路径(结束点连到开始点), fillStyle()设置填充颜色, fill()填充该路径
阅读全文
浙公网安备 33010602011771号