自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

oi

  • 博客(23)
  • 收藏
  • 关注

原创 JavaScript中常用的继承方式以及各个继承方式的优缺点

综合来说,寄生组合式继承是一种比较优秀的继承方式,可以避免其他继承方式的缺点,实现完整的继承。构造函数的调用比较方便,使用 super 关键字即可调用父类的构造函数。在 ES6 中,使用 extends 关键字可以实现类的继承。代码结构更加清晰易懂,能够增强代码的可读性和可维护性。支持多重继承,可以继承多个父类的属性和方法。支持父类的静态方法和成员的继承。不能继承非可枚举属性和方法。无法继承函数的内部状态。存在循环引用的问题。

2023-05-24 17:14:55 437

原创 npm install 包,提示安装成功,但是项目目录中没有出现node_modules的解决方案

包,没有报错,提示安装成功,但是项目中没有出现,也没有安装的包,中也没有任何依赖包记录。

2023-05-24 17:14:10 7149 1

原创 微信小程序原生开发的性能优化策略

例如,可以将较大的资源放入独立的子包中,从而减少主包的体积,加快启动时间。要开启分包预加载,需要在小程序的app.json文件中添加preloadRule属性,以指定预加载的规则。对于需要频繁更新的数据,可以使用WXS(小程序中的一种脚本语言)或持久化存储方式,减少setData()方法的调用次数。分包预加载是一种优化小程序性能的技术,在用户访问分包前提前加载分包的资源,从而减少用户等待时间和提高用户体验。需要仔细考虑和规划哪些分包需要预加载,加载规则需要遵循小程序规定的路径结构和逻辑关系。

2023-05-11 17:48:12 552

原创 JSX/TSX的知识介绍

JSX和TSX是一种基于JavaScript的语法扩展,用于在React和Vue.js等框架中编写可复用的UI组件和控制逻辑。JSX/TSX可以帮助开发者更加直观和高效地编写UI组件和交互逻辑,同时也可以提高代码的可读性和可维护性。其中,JSX是React的一种扩展语法,用于构建UI组件和控制逻辑。TSX是TypeScript与JSX结合使用后,用于构建可复用UI组件和控制逻辑的一种语法扩展。TSX在VSCode等IDE中有很好的支持,可以带来更好的代码补全和类型检查。

2023-05-04 22:34:50 4575

原创 Uni-app与Vue、微信小程序开发的区别,以及Uni-app实现多端开发的基本原理

官方介绍:uni-app 是一个使用 Vue.js 开发所有前端应用的框架,开发者编写一套代码,可发布到iOS、Android、Web(响应式)、以及各种小程序(微信/支付宝/百度/头条/飞书/QQ/快手/钉钉/淘宝)、快应用等多个平台。DCloud公司拥有900万开发者、数百万应用、12亿手机端月活用户、数千款uni-app插件、70+微信/qq群。阿里小程序工具官方内置uni-app(详见),腾讯课堂官方为uni-app录制培训课程(详见),开发者可以放心选择。uni-app在手,做啥都不愁。

2023-05-04 22:29:36 2686

原创 canvas标签的理解与运用

Canvas 是 HTML5 中新增的一个用于绘制图形的标签,它提供了一套简单且强大的 API,可以通过 JavaScript 动态绘制图形、渲染图像和创建动画等。Canvas 可以用于在网页上绘制各种类型的图形,包括线条、矩形、圆形、路径、图片等。Canvas 提供了2D绘图上下文(Context),通过获取 Canvas 上下文对象,可以使用一系列的绘图方法来操作画布上的图形和图像。Canvas 提供了丰富的绘图 API,包括路径、渐变、阴影、文字、图像等,可以根据具体需求来实现各种图形和效果。

2023-04-18 20:31:46 822

原创 Git 常用命令 与 报错如:! [rejected] main -> main (fetch first)……等的解决方案

报错的原因是因为,每个仓库都有一个分支,也可以理解为大仓库里的小仓库,我们只是跟线上远程仓库有了关联,但没有跟线上远程仓库的某个分支关联,所以我们没法提交在终端输入即可跟刚创建的线上远程仓库的默认分支master关联这时再执行一下即可将我们的项目文件上传到关联的线上远程文件中。

2023-04-18 20:30:42 1347

原创 304状态码、强缓存和协商缓存的详细解释

304 状态码是 HTTP 协议中表示资源未发生变化的状态码,用于优化性能,减少带宽消耗。在处理 HTTP 请求时,服务器会通过判断资源的状态来决定是使用强缓存还是协商缓存。

2023-04-14 22:12:28 1975

原创 npm yarn pnpm 的区别

在 npm@3 版本之前,npm 使用的是依赖嵌套安装的方式,每个依赖性都有自己的 node_modules 文件夹,这导致了两个问题。需要注意的是,多个版本的包只有一个被提升到顶层,其余版本的包会被嵌套安装在各自的依赖中。pnpm 通过硬链接将锁定的版本与实际安装的依赖项关联起来,从而确保在不同的环境中和不同的构建之间使用相同的依赖版本。与此不同,pnpm 会创建一个隐藏的文件夹 .pnpm,以平铺的方式存储所有的包,通过包名和版本号来实现同一模块的不同版本之间的隔离和复用。

2023-04-14 22:03:10 424

原创 异步编程 Promise、async、await 的概念、作用与区别

当第一个任务执行完毕之后,在回调函数里再去执行第二个任务,然后第三个第四个,这样嵌套下去,代码的可读性会变的很差,这种情况也叫函数的 “回调地狱” ,为了解决这个问题,Promise应运而生。例如下面的计时器,通过回调函数让我们的函数在指定的时间后执行,这个函数本身会立刻返回,程序会紧接着执行之后的代码,而我们传入的回调函数则会等到预定的时间才会执行。我们可以通过调用它的then方法来传递一个回调函数,如果这个请求在未来成功完成,那么回调函数就会被调起,请求的结果也会以参数的形式传递进来。

2022-11-06 18:57:02 643

原创 JS原型与原型链详细解释

原型和原型链是JS实现继承的一种模型。

2022-10-21 22:37:01 5113

原创 uniapp小程序实现长按录音、上滑取消的与语言录入模块(CSS实现语音音阶动画效果)

uniapp小程序实现长按录音、上滑取消的与语言录入模块

2022-08-21 17:50:12 4778 4

原创 element-plus Table组件更新数据后表头消失的解决方法

table组件表头突然消失

2022-08-21 17:08:43 3484

原创 uni-app跨平台框架对微信小程序的aria无障碍属性改善

uni-app跨平台框架对微信小程序的aria无障碍属性改善的内容。

2022-08-20 22:42:10 1472

原创 软件工程 学生信息管理系统 结构化的需求分析

1.实验目的1)完成毕业生就业服务系统整个需求分析工作;2)掌握结构化数据流分析技术;3)进行业务需求分析、用户需求、功能需求、非功能需求分析;4) 画出系统的数据流图(至少画到三级数据流图)2.实验要求根据所要开发的软件系统,利用结构化数据流分析技术分析系统的具体需求,完成详细的数据流图和数据字典,数据流图的基本处理的个数不得少于5个。3.需求分析3.1用户需求通过获取用户的需求,本系统大致可分为3个子系统,分别是学生、教师、管理员。每一个子系统下面拥有若干个功能。本系统模拟教师对日常考

2022-05-08 10:19:46 14584 6

原创 Vuex 4的基本使用

Vuex 4的基本使用Vuex 是什么?Vuex 是什么?官方说法:Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式 + 库。它采用集中式存储管理应用的所有

2022-03-27 19:14:59 1384

原创 在vue3引用Animate.css(一个CSS3 动画库)教程

在vue项目中使用Animate.css库实现过渡动画效果文章目录在vue项目中使用Animate.css库实现过渡动画效果前言一、Animate.css是什么?二、认识transition元素三、在vue项目中使用Animate.css库1.安装2.将其导入您的文件:3.使用总结前言简易的动画和巧妙的微交互功能如今风行一时。前端在创作页面的过程中,想要实现好看的动画效果需要编写大量的css代码,与基础不好的新手而言有一定难度,而使用Animate.css库可以帮助我们更加轻松的实现我们想要的动画

2022-02-20 09:43:10 11962 1

原创 浏览器默认设置SameSite属性的作用

系列文章目录文章目录系列文章目录一、CSRF 攻击是什么二、SameSite 属性一、CSRF 攻击是什么CSRF(Cross-site request forgery),中文名称:跨站请求伪造CSRF攻击往往通过盗取你的 Cookie 信息,而Cookie 往往用来存储用户的身份信息,在盗取完你的 Cookie 信息后;恶意网站可以设法伪造带有正确 Cookie 的 HTTP 请求,这就是 CSRF 攻击。简单来说就是:攻击者盗用了你的身份,以你的名义发送恶意请求。一个典型的CSRF攻击有

2022-01-30 17:11:11 7267

原创 vue通过代理devServer 解决跨域问题 与 配置代理后打包部署报错404的解决方法

文章目录一、跨域是什么?二、devServer的作用三、如何解决跨域问题四、配置代理后打包部署报错404的解决方法一、跨域是什么?跨域问题的出现是因为浏览器的同源策略问题,所谓同源:就是两个页面具有相同的协议(protocol),主机(host)和端口号(port),它是浏览器最核心也是最基本的功能,如果没有同源策略我们的浏览器将会十分的不安全,随时都可能受到攻击。二、devServer的作用如果你的前端应用和后端 API 服务器没有运行在同一个主机上,你需要在开发环境下将 API 请求代理到

2022-01-30 01:10:20 8643

原创 vue结合百度地图api实现地址检索、路线规划等功能

vue+百度地图api引入百度地图api获取用户当前位置地址检索(定位)路线规划修改提示框等样式引入百度地图api找到项目的根目录index.html位置:在项目的根目录下的index.html文件中添加如下代码:<script type="text/javascript" src="http://api.map.baidu.com/api?v=3.0&ak=您的秘钥"></script>创建一个div用于地图展示<template> <

2022-01-23 02:57:03 7237 7

原创 Vue引入vue-qr组件实现生成二维码,且实现在二维码中间加入logo图片功能

一、vue-qr是什么?SumiMakito 的 Awesome-qr.js的 Vue 2.x 组件适用于 Vue.js 的二维码组件!官网:https://www.npmjs.com/package/vue-qr二、使用步骤1.用npm安装vue-qr组件代码如下(示例):npm install vue-qr --save2.引入vue-qr组件代码如下(示例):<script>import VueQr from 'vue-qr';export default {

2021-08-15 01:50:28 3804 2

原创 vue3项目中App.vue中<router-view/>报错The template root require....

问题描述:在创建新的vue3项目时,src目录下的App.vue文件中的会自动报错The template root requires exactly one element. 原因分析:这是Vetur认为这是一个Vue 2项目,因为它位于VS Code工作区中。而Vue2只允许模板里存在一个根节点。解决方案:第一种方法在 <template> 中添加一个 <div>标签,之后所有的组件全部加在<div>即可解决。<template&g.

2021-05-23 00:10:45 4427 2

原创 vue 无法找到模块“vue-aplayer”的声明文件的解决方法

vue 无法找到模块“xxx”的声明文件的解决方法已经安装模块,却报错无法找到模块“xxx”声明文件按照提示安装npm i --save-dev @types/xxx会安装失败找到项目中的shime-vue.d.ts文件,文件内容写上以下声明:若无shime-vue.d.ts文件,可直接在src目录下新建一个d.ts文件,在里面写入上述的声明即可。已经安装模块,却报错无法找到模块“xxx”声明文件做项目直接引入插件或者组件时可能会出现这种问题按照提示安装npm i --save-dev @types

2021-05-09 04:01:19 8876 3

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除