自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(109)
  • 资源 (4)
  • 收藏
  • 关注

原创 JavaScript模块化:CommonJS、AMD与ES模块化

CommonJS主要用于服务器端,同步加载模块,适用于Node.js。它的优势在于简单易用,但在浏览器端可能导致页面阻塞。AMD主要用于浏览器端,异步加载模块,避免页面阻塞。它的优势在于适用于大型Web应用程序,但语法相对繁琐。ES模块化是最新的模块化标准,适用于服务器端和浏览器端,具有更好的语法和功能。它的优势在于静态加载、编译时检查和更简洁的语法,但需要浏览器或运行时的支持。在实际项目中,可以根据具体需求和场景选择合适的模块化规范。例如,对于Node.js项目,可以使用CommonJS;

2024-04-15 09:31:08 1016

原创 npm install 的不同选项:--save、--save-dev、-S、-D 的区别

Node.js 的包管理器 npm 提供了一个命令,用于安装 Node.js 项目所需的依赖包。在使用这个命令时,我们可以通过添加不同的选项来控制依赖包的安装方式。--save--save-dev-S和-D的区别。

2024-04-13 09:57:43 350

原创 掌握 Conventional Commits 规范:提升项目版本控制的清晰度与自动化

是一种约定,它定义了一种特定的 commit 信息格式,使得自动化工具能够理解并据此执行各种任务,如自动生成变更日志、决定版本号的升级策略等。这种规范基于semver(语义化版本控制)原则,将 commit 信息分为不同的类型,并允许添加可选的脚本来描述更改的性质。它是一种基于提交消息的轻量级公约,旨在创建清晰、可读的提交历史记录。通过遵循这一规范,我们可以更容易地编写基于规格的自动化工具,例如自动生成版本号和更新日志。这个规范起源于 Angular 项目的提交准则,并逐渐被许多其他项目和组织所采用。

2024-04-13 09:57:06 808

原创 如何管理NPM 包版本号?使用standard-version进行版本控制和发布(全网最全教程)nolan出版

standard-version还允许你在各个步骤前后运行自定义脚本。例如,在版本号更新前后,或者在git提交前后。你可以在中添加prebumppostbumpprecommitpostcommitstandard-version是一个强大而灵活的工具,能够让版本控制和发布变得更简单,更规范,也更易于跟踪和理解。无论你是个人开发者,还是团队开发者,我都强烈推荐你试试看。

2024-04-13 09:55:45 753

原创 “掌握高效团队协作的秘诀:企业项目中的Git规范实践指南“

在当今快速发展的软件行业中,团队协作和项目管理变得越来越重要。而作为一种分布式版本控制系统,Git已经成为了开发者们的必备工具。在企业项目中,如何有效地运用Git来提升团队协作效率和项目管理水平呢?本文将为您揭示高效团队协作的秘诀,详细介绍企业项目中的Git规范实践指南,助您轻松掌握项目管理的诀窍。无论您是企业管理者、项目负责人还是开发者,都可以从本文中受益匪浅。让我们一起探索如何运用Git规范来提升企业项目的管理水平,实现高效团队协作。

2023-11-27 19:53:22 448

原创 “前端开发必备:掌握这些知识,让你的技能瞬间升级!“

第一优先级,浏览器相关知识, BOM, DOM,相关API, javascript的原生api(很多, 相对重要)第二优先级网络知识(私有协议入(CGW), 服务发现),后端相关知识与容器化技术,这个因为工作中有用到第三优先级,基本功部分,数据结构, 算法,硬件知识。

2023-11-27 19:52:19 442

原创 React diff的原理是什么

对于同一层级的节点,React 会用唯一的 key 来标识,提供了三种操作:插入、移动和删除。可以准确地发现新旧集合中的节点都是相同的节点,因此无需进行节点删除和创建,只需要将旧集合中节点的位置进行移动,更新为新集合中节点的位置。发现新树中,R节点下没有了A,那么直接删除A,在D节点下创建A以及下属节点,上述操作中,只有删除和创建操作。React 只会对相同层级的节点进行比较,如果节点跨层级移动,会直接删除旧节点,创建新节点。运算,如果不是一个类的组件,那么直接删除这个组件下的所有子节点,创建新的。

2023-06-10 11:13:04 1029

原创 【小番茄夫斯基】快速掌握Express框架—从基本概念到实践应用

Express是目前最流行的基于Node.js的Web开发框架,可以快速地搭建一个完整功能的网站。

2023-02-09 19:23:41 385 1

原创 【小番茄夫斯基】Pinia状态管理

Pinia是尤雨溪强烈推荐的一款Vue状态管理工具,也被认为是下一代Vuex的替代产品。即Vuex5.x,在Vue3.0的项目中使用也是备受推崇。

2023-02-02 16:17:12 474

原创 【小番茄夫斯基】全网最全前端面试手撕算法题,原理手写汇总

全网最全前端面试手撕算法题,原理手写汇总

2023-02-02 16:12:53 499

原创 在查阅大量资料之后,我整理出了http 1.0/1.1/2/3 各个版本的知识要点和http已经https的原理剖析

HTTP的特性是明文传输,因此在传输的每一个环节,数据都有可能被第三方窃取或者篡改,具体来说,HTTP数据经过TCP层,然后经过WIFI路由器、运营商和目标服务器,这些环节中都可能被中间人拿到数据并进行篡改,也就是我们常说的中间人攻击。其原理是在HTTP和TCP之间建立了一个中间层,当HTTP和TCP通信时并不是像以前那样直接通信,直接经过了一个中间层(TLS、SSL)进行加密,将加密后的数据包传给TCP,响应的,TCP必须将数据包解密,才能传给上面的HTTP。...

2022-07-26 09:35:33 360

原创 大前端知识图谱+B站视频整合

文章目录前端学习路径B站视频整合网络知识超文本标记语言层叠样式表浏览器脚本语言[https://www.bilibili.com/video/BV1Sy4y1C7ha](https://www.bilibili.com/video/BV1Sy4y1C7ha)版本控制管理系统网络安全相关知识包管理工具CSS 预处理 语言构建工具三大前端框架React.jsVue.jsCSS 相关框架JavaScript 语法糖服务端渲染React.jsVue.js静态站点生成器移动App开发Uni-App美团外卖:[http

2022-05-03 17:48:31 1243 1

原创 原生js 实现 apply, call , bind 进行this的绑定

apply// 实现Function.prototype.myApply = function(context=globalThis,...args){ let key = Symbol('key'); context[key] = this; let result = context[key](args); delete context[key]; return result;}function f(a,b){ console.log(a+b) console.

2022-04-18 22:56:09 135

原创 js手写算法原理 , 深拷贝函数, 拍平数组 , 数组去重 , 手写new , 实现 myInstanceOf , 柯里化函数

js实现算法原理

2022-04-18 22:53:57 221

原创 leetcode 回溯法例题,组合总和

leetcode刷题日记,回溯法

2022-04-18 22:14:24 246

原创 一道有趣的leetcode算法题【验证回文串】多种方式解答,了解回文类题目的解题思路

原题 leetcode 125题我的解题是/** * @param {string} s * @return {boolean} */var isPalindrome = function(s) { let str = s.toLowerCase(); let newStr = '' for(let i=0;i<=str.length;i++){ if(str.charCodeAt(i)>=97 && str.charCod

2022-03-28 20:02:07 2176

原创 大二项目实战:使用flutter开发的学生端app【云山印尼语学习辅助平台】

项目介绍云山印尼语 Study(简称“云印”)是一款主要面向学习印尼语的高校学生 和印尼语教师以及其他印尼语学习者的辅助学习平台。“云印”功能丰富,满 足学生、教师两种角色的不同需求,为学生提供从单词记忆、基础课程学习、 搜索翻译到课外文章阅读、视频拓展的逐步深入的系统性语言学习辅助功能, 并且为学生设计了具有趣味性的“每日单词打卡”和“每日一句”系列,促进 学生养成持续的学习习惯。为教师提供课程管理、教学资料上传等针对性教学 功能,并为教师和学生搭建实时的交流互动平台,弥补现今印尼语教育的市场 缺口

2022-03-09 11:15:01 2287

原创 vue3中的组件通信【2】《爷孙组件通信》

文章目录爷孙组件通信provide / inject响应性数据的传递与接收爷孙组件通信顾名思义,爷孙组件是比 父子组件通信 要更深层次的引用关系(也有称之为 “隔代组件”):Grandfather.vue└─Son.vue └─Grandson.vue方案因为上下级的关系的一致性,爷孙组件通信的方案也适用于 父子组件通信 ,只需要把爷孙关系换成父子关系即可。provide / injectGrandfather.vue 有一个 provide 选项来提供数据,Grandson.v

2022-02-25 16:03:15 5552 1

原创 vue3中的组件通信【1】《父子组件通信》

文章目录父子组件通信(1)props / emits①props使用props获取非 Prop 的 Attributeemits(子传父)(2)v-model / emits(3)ref / emits父子组件通信(1)props / emits①propsFather.vue<template> <Child title="用户信息" :index="1" :uid="userInfo.id" :user-name="userInfo.na

2022-02-25 15:46:21 3432

原创 【flutter】dart中future的使用

文章目录背景Future.thenFuture.catchErrorFuture.whenCompleteFuture.waitFuture.delayedonErrorFutere背景编程中的代码执行,通常分为同步与异步两种。简单说,同步就是按照代码的编写顺序,从上到下依次执行,这也是最简单的我们最常接触的一种形式。但是同步代码的缺点也显而易见,如果其中某一行或几行代码非常耗时,那么就会阻塞,使得后面的代码不能被立刻执行。异步的出现正是为了解决这种问题,它可以使某部分耗时代码不在当前这条执行线路上立

2022-02-06 14:07:09 2971

原创 【flutter】json的序列化和反序列化,在模型类中序列化json

一,序列化 JSON1、使用 dart:convert 手动序列化 JSON2、模型类中序列化 JSON小项目中使用 dart:convert 手动序列化 JSON 非常好,也非常快速。但是随着项目的增大, dart:convert 手动序列化 JSON 的话失去了大部分静态类型语言特性:类型安全、自动补全和 最重要的编译时异常。这样一来,我们的代码可能会变得非常容易出错。当我们访问 name 或 email 字段时,我们输入的很快,导致字段名打错了。但由于这个 JSON 在 map 结构中,所

2022-02-06 12:31:38 2180

原创 在 Vue 3 和 Vite 安装 Tailwind CSS

安装npm install -D tailwindcss@latest postcss@latest autoprefixer@lates创建您的配置文件接下来,生成您的 tailwind.config.js 和 postcss.config.js 文件:npx tailwindcss init -p这将会在您的项目根目录创建一个最小化的 tailwind.config.js 文件:// tailwind.config.jsmodule.exports = { purge: [],

2022-01-12 16:12:39 1057

原创 Mock.js(生成虚假数据)使用及在vue+vite+ts中集成mock.js

文章目录介绍使用①下载②引入③Mock.js的规范Mock.mock()Mock.Random在Vue项目中使用Mock.js介绍mock.js 官网:http://mockjs.com/目前的大部分公司的项目都是采用的前后端分离, 后端接口的开发和前端人员是同时进行的. 那么这个时候就会存在一个问题, 在页面需要使用大量数据进行渲染生成前, 后端开发人员的接口也许并没有写完, 作为前端的我们也就没有办法获取数据. 所以 前端工程师就需要自己按照接口文档模拟后端人员提供的数据, 以此进行页面的开发.

2022-01-12 14:25:10 2587

原创 vue中的一个简单好用的标题组件

封装代码<template> <div class="title-bar">{{ title }}</div></template><script lang="ts">export default { name: 'TitleBar', props: { title: { type: String, default: '' } }}</script><sty

2022-01-02 16:52:27 909

原创 页面载入进度条 nprogress的使用

介绍页面路由切换时,附带一个加载进度条会显得非常友好,不至于白屏时间过长,让用户以为页面假死。这时候我们可以用到 nprogress[108],在路由切换时开启和关闭:安装npmnpm install --save nprogresyarnyarn add nprogress使用直接调用 start()或者done()来控制进度条。可以使用inc()随机增长进度条,注意,这个方法永远不会让进度条达到100%。NProgress.inc()通过使用done()让进度条关闭。NP

2021-12-30 16:27:30 690

原创 TypeScript中的泛型理解使用笔记

介绍很多时候我们无法准确定义一个类型,它可以是多种类型,这种情况下我们习惯用 any 来指定它的类型,代表它可以是任意类型。any 虽好用,但是它并不是那么安全的,这时候应该更多考虑泛型。function echoValue<T>(arg: T): T { return arg}T 是类型变量,它是一种特殊的变量,只用于表示类型而不是值,使用 <> 定义。定义了类型变量之后,你在函数中任何需要指定类型的地方使用 T 都代表这一种类型,这样也能保证返回值的类型与传入参数

2021-12-23 21:01:46 494

原创 tsconfig.json配置学习笔记

tsconfig.json介绍tsconfig.json 是 TypeScript 项目的配置文件。如果一个目录下存在一个 tsconfig.json 文件,那么往往意味着这个目录就是 TypeScript 项目的根目录。tsconfig.json 包含 TypeScript 编译的相关配置,通过更改编译配置项,我们可以让 TypeScript 编译出 ES6、ES5、node 的代码。tsconfig.json 重要字段files - 设置要编译的文件的名称;include - 设置需要进行编译

2021-12-23 20:47:20 231

原创 vscode的终端美化

vscode终端主题:https://glitchbone.github.io/vscode-base16-term/#/进入网站点击Copy to clipboard,粘贴到主题美化代码进入vscode setting配置将复制的代码放进去我的配置如下 "workbench.colorCustomizations": { "terminal.background": "#F5F7FF", "terminal.foreground": "#5E6687", "ter

2021-12-02 23:38:12 4145 2

原创 关于npx和 npm详细区别的学习笔记

npmnpm是Node.js的软件包管理器,其目标是自动化的依赖性和软件包管理。这意味着,可以在package.json文件中为项目指定所有依赖项(软件包),当需要为其安装依赖项时,只要运行npm install就可以。npxnpx是执行Node软件包的工具,它从 npm5.2版本开始,就与npm捆绑在一起。npx的作用:默认情况下,首先检查路径中是否存在要执行的包(即在项目中);如果存在,它将执行;若不存在,意味着尚未安装该软件包,npx将安装其最新版本,然后执行它;上文已说明,此

2021-11-20 10:32:30 289

原创 prettier和beautify哪个好用

beautify插件是在vscode开发软件上,用来格式化代码的一款产品。可以格式化html,js和css等。1 在vscode软件上,搜索beautify插件进行安装2 在根目录下建立一个文件,命名为.jsbeautifyrc。3 在该文件内,进行配置https://blog.csdn.net/wangbiao9292/article/details/120456193...

2021-11-19 12:00:12 3079

原创 vue3中使用Ant Design 并且使用 babel-plugin-import 来进行按需加载

首先,在百度到ant design官网之后,要在右上角调整版本不然会有大坑下载使用npm i --save ant-design-vue@next完整引入import { createApp } from 'vue';import Antd from 'ant-design-vue';import App from './App';import 'ant-design-vue/dist/antd.css';const app = createApp();app.config.pro

2021-11-18 20:49:25 1801 2

原创 关于package.json文件配置的学习笔记

详细配置请看 https://www.cnblogs.com/datiangou/p/10172994.htmlnpm init命令就可以初始化一个package.json文件{ "name": "test", // package的名称 "version": "1.0.0", //package的版本 "description": "",//包的描述。开发组件库时必需,简明的向库的使用者介绍这个库是干嘛的。对于公司的业务项目,这个配置项一般无所谓。 "main": "index.js"

2021-11-18 19:12:10 140

原创 关于npm命令的学习笔记,--save 、--save-dev 、-D、-S

1,npm install 等价于 npm i --save 等价于 -S --save-dev 等价于 -D 2,npm i --save-dev <packname> //工程构建(开发时、“打包”时)的依赖 ;//例:xxx-cli , less-loader , babel-loader...,//会将包名字加在 devDependencies 中3,npm i --save <packname> //项目(运行时、发布到生产环

2021-11-18 19:01:17 1023

原创 Vue组件通信方式 props/$emit

自定义事件本质是由子组件向父组件传递信息<template> <div role="alert" :class="['el-alert',changeAlert,'is-center','is-light']"> <i :class="['el-alert__icon',changeIcon]"></i> <div class="el-alert__content"> <slo

2021-11-07 11:33:41 711

原创 vue3中插槽的详细使用笔记

文章目录一,插槽的作用二,样例三,具名插槽一,插槽的作用类似于你往电脑的卡槽中插内存卡啊等,简单来说,就是父组件向子组件传值的时候用的,在子组件中用 <slot ></slot>先预留出一个位置,然后父组件就可以在调用子组件的时候可以在子组件标签内部向子组件添加信息,不是之前的数据传递,是模板数据的传递二,样例比如,我们现在先定义两个组件,一个父组件father,一个子组件son,父组件调用子组件<template> <h1>我是父组件&l

2021-11-07 10:18:23 1567 1

原创 vue-router 路由跳转传参的几种方式,其中有刷新页面丢失参数的写法和不丢失参数的写法

常见场景:点击列表详情,跳转到详情内页,传递id参数获取详情数据。我们先来看看路由跳转的几种方式:1、通过params方式传参通过$route.push的path携带参数方式(路由配置中指定参数)// 路由配置{ path: '/detail/:id', //若id后面加?代表这个参数是可选的,即使不传id也不会导致页面无法访问 name: 'detail', component: Detail } // 列表中跳转this.$router.push({ pa

2021-10-15 19:23:58 1300

原创 xmapp启动apache不起来解决办法,不用改端口,没用

看了很多文章都是说端口被占用,但是端口又没有被占用到,改了也没用有一个解决办法是php不兼容这里讲不兼容的问题,很好解决,原因是PHP 7.4.x需要用于Visual Studio 2019的Microsoft Visual C ++ Redistributable可在此处下载:进去之后向下滚动→其他工具和框架→Microsoft Visual C++ Redistributable for Visual Studio 2019→选择你对应的版本下载,我这里选择的是64位的https://visu

2021-10-13 15:27:01 154

原创 POST 提交数据方式(application/x-www-form-urlencoded,multipart/form-data,application/json)

HTTP/1.1 协议规定的 HTTP 请求方法有 OPTIONS、GET、HEAD、POST、PUT、DELETE、TRACE、CONNECT 这几种。其中 POST 一般用来向服务端提交数据,本文主要讨论 POST 提交数据的几种方式。我们知道,HTTP 协议是以 ASCII 码传输,建立在 TCP/IP 协议之上的应用层规范。规范把 HTTP 请求分为三个部分:状态行、请求头、消息主体。类似于下面这样:<method> <request-URL> <version&g

2021-10-05 16:32:54 3513

原创 vue3使用screenfull插件实现全屏效果

npm地址:https://www.npmjs.com/package/screenfull使用方法安装npm install screenfull --save在使用.vue文件中 引入import screenfull from "screenfull"在按钮方法中调用方法可以双向切换全屏与非全屏screenfull.toggle()还可以检测全屏状态screenfull.isFullscreen测试浏览器是否支持全screenfullscreenfull.isEnabl

2021-09-15 21:50:58 766

原创 vue3+vite+ts+vuex+vue-router+Element-plus+tailwindcss+mock 搭建完整项目

一,介绍Vite(法语单词,“快” 的意思)是一种新型的前端构建工具最初是配合 Vue3.0 一起使用的,后来适配了各种前端项目,目前提供了 Vue、React、Preact 框架模板vite —— 一个由 vue 作者尤雨溪开发的 web 开发工具,它具有以下特点:快速的冷启动即时的模块热更新真正的按需编译从作者在微博上的发言:Vite,一个基于浏览器原生 ES imports 的开发服务器。利用浏览器去解析 imports,在服务器端按需编译返回,完全跳过了打包这个概念,服务器随起

2021-09-10 16:40:39 1955

NetworkApp-master.rar

2022-01-05

操作系统实践笔记.pdf

linux操作系统实践的命令详解

2021-06-28

数据挖掘大作业_《银行客户流失分析》.pdf

数据挖掘大作业文档,对银行客户流失进行分析,随着互联⽹⾦融的异军突起,银⾏业的竞争愈加激烈,防⽌客户流失和挽留⽼客户成为各⼤银⾏ 关⼼的重要问题。本⽂⾸先根据已有数据集对各特征进⾏描述性统计分析,初步了解数据;之后 进⾏数据预处理,包括数据清洗,数据变换、特征选择;再后⽤逻辑回归、⽀持向量、朴素⻉叶 斯、决策树、随机森林等算法进⾏建模,通过不同性能度量,选出为表现最好的模型并进⾏调 参;最后,根据描述性统计和特征重要性为银⾏挽留客户提出建议。

2021-06-19

软件工程综合实践报告.pdf

用Javafx做的一个学生成绩管理系统,是软件工程《学期综合实践》课程的一个大作业

2021-06-03

空空如也

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

TA关注的人

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