- 博客(571)
- 资源 (24)
- 收藏
- 关注
原创 js闭包概念和使用
闭包是 JavaScript 中一个重要的概念,它指的是一个函数和其周围状态(即词法环境)的引用组合。闭包允许函数访问其外部作用域中的变量,即使外部函数已经执行完毕。简单来说,闭包可以理解为“定义在一个函数内部的函数,能够访问外部函数的局部变量”12。闭包是 JavaScript 中的一个强大工具,它通过访问外部作用域的变量来实现封装、状态保持等功能。合理使用闭包可以提升代码的灵活性和可维护性,但同时也需要注意内存和性能管理,避免潜在问题15。
2025-04-30 10:04:00
387
原创 浅谈JavaScript中的This指向问题
例子很好理解,输出的结果相信大家也能看得明白,哪天,韩梅梅想买一个盆,她买不了,因为她还没有这个方法,她一想:我没有这个方法,但是李雷有啊,我打电话给李雷把钱他让他帮我买啊;在obj.foo(),foo的属性值为printA,被obj直接调用,所以this指向obj,this.a就是obj.a=2了;因为这个时候是直接调用方法的,所以this指向全局window对象,那么问题来了,我们想判断我们点击的是哪一个按钮,应该怎么做呢,我们可以把this的值作为参数传入方法中再使用,例子如下。
2025-04-29 17:18:37
559
原创 封装js方法 构建树结构和扁平化树结构
在JavaScript中,构建树结构和将树结构扁平化是常见的操作。下面我将提供两个方法,一个用于从扁平化的数据中构建树结构,另一个用于将树结构扁平化。
2025-04-29 16:11:22
227
原创 使用js写一个发布订阅者
这种模式在许多场景中都非常有用,比如在组件间进行解耦通信,或者在复杂的应用程序中管理不同部分之间的事件流。当发布一个事件时,所有订阅了该事件的回调函数都会被调用。
2025-04-29 15:36:44
195
原创 PostCSS 插件的使用:postcss-px-to-viewport、postcss-pxtorem
这个插件主要用于响应式设计,使网页在不同设备和屏幕尺寸上具有更好的适应性。是一个 PostCSS 插件,用于将 CSS 中的像素单位(px)转换为视口单位(安装好插件后,需要在 PostCSS 配置文件(例如。然后,在你的 PostCSS 配置文件(通常是。
2025-04-21 17:38:17
554
原创 js 定义方法的多种方式
选择哪种方式取决于你的具体需求和个人偏好。在现代JavaScript开发中,箭头函数和类方法是非常常见的选择。每种方式都有其特定的使用场景和优势。例如,箭头函数没有自己的。类中的方法则是面向对象编程的一部分,用于定义类的行为。而函数声明和函数表达式则可以有自己独立的。绑定,它们会捕获其所在上下文的。
2025-03-04 16:39:13
262
原创 call()、bind()、apply()的区别和使用方法
说实话工作中基本很少用到,除非你在封装一些底层框架会用到属于封装框架必备。面试基本都会问一下这个三个,区别就是传递的参数不同,bind()不是立刻执行而是点击以后才会执行并且是返回一个改变了上下文 this 后的函数,便于稍后调用。而原函数 中的 this 并没有被改变,依旧指向原来该指向的地方。
2025-02-14 10:59:17
693
原创 react 18父子组件通信
在React 18中,这些通信方式仍然有效,并且可以结合使用以满足不同的需求。选择哪种方式取决于你的具体场景和组件结构。当多个子组件需要共享状态时,可以将状态提升到它们的共同父组件中管理。如果需要直接在父组件中操作子组件的DOM或状态,可以使用Refs。当需要在多个层级的组件之间传递数据时,可以使用Context。父组件通过属性(props)向子组件传递数据,子组件通过。子组件通过调用父组件传递下来的函数来传递数据。
2025-02-08 17:15:57
415
原创 React Native 开发 安卓项目构建工具Gradle的配置和使用
gradle是React Native和Flutter调试、构建安卓App的打包工具。gradle可以简单的类比为前端的webpack,webpack将源文件打包成HTML、CSS、JavaScript,而gradle将源文件打包成apk或aar(Android Assemble Bundle)。
2025-02-07 14:53:34
1177
原创 react 函数组件怎么使用生命周期函数
在React函数组件中,生命周期函数的使用与类组件有所不同。函数组件通过钩子(Hooks)来实现生命周期函数的功能。
2025-02-06 09:25:28
356
原创 TypeScript的5个常见用法
TypeScript 是一种静态类型的 JavaScript 超集,它提供了额外的类型系统和一些 ECMAScript 新特性的支持。TypeScript 支持使用模块化的方式组织代码,可以使用 import 和 export 关键字导入和导出模块。TypeScript 提供了接口和类型别名的机制,用于描述对象的结构和类型。TypeScript 提供泛型的支持,可以创建可重用的、类型安全的组件。通过使用泛型,可以在不同的地方使用相同的代码,但适应不同的类型。等地方添加类型注解,明确指定变量的类型。
2025-02-05 10:31:52
149
原创 MySQL5.7安装超详细步骤(图文教程)
依次点开“MySQL Servers→MySQL Servers→MySQL Servers 5.7→;然后点击绿色箭头将选中的版本移到右侧框中。
2025-01-23 14:07:02
820
原创 ant design pro 安装与启动
如果选择了 umi@3,还可以选择 pro 的模板,pro 是基础模板,只提供了框架运行的基本内容,complete 包含所有区块,不太适合当基础模板来进行二次开发。运行这个脚本会启动服务,自动打开默认浏览器展示你的页面。当你重新编辑代码后,页面还会自动刷新。脚手架初始化成功之后就可以开始进行开发了,我们提供了一些命令来辅助开发。如果选择了 umi@4 版本,暂时还不支持全量区块。我们提供了 pro-cli 来快速的初始化脚手架。访问不通,我要访问mock地址啊。以上按照官网提示操作。
2025-01-08 14:36:24
468
原创 vscode中设置默认格式化工具pretter
搜索 Default Formatter,然后选择 Prettier - Code formatter。搜索 editor.formatOnSave,勾选 Editor: Format On Save 选项。打开 VSCode 的设置(快捷键 Ctrl+, 或点击右下角齿轮图标 -> Settings)。打开 VSCode 的扩展市场(快捷键 Ctrl+Shift+X 或点击左侧的扩展图标)。搜索并安装 Prettier - Code formatter 插件。1. 安装 Prettier 插件。
2025-01-02 19:44:34
995
原创 vsCode配置Eslint+Prettier结合使用详细配置步骤,规范化开发
Eslint附带了大量的校验规则,这些规则的值分别有如下规律:off | 0 :表示关闭规则。warn | 1 :表示将该规则转换为警告。error | 2 :表示将该规则转换为错// "semi": [2, "always"],//语句强制分号结尾// "quotes": [2, "double"],//引号类型 ""//"no-alert": 0,//禁止使用alert//"no-console": 2,//禁止使用console。
2024-12-02 10:44:15
1875
原创 Vue3.0组件之间通信(defineProps 和 defineEmits 及 defineExpose)
1. defineProps 和 defineEmits 、defineExpose 都是只能在 中才能使用,他们不需要被导入即可使用,并且会在编译 语法块时一同被编译。在子组件中可以使用defineProps声明需要接收父组件的哪些props,它需要定义一个包含props字段的对象,每个字段定义默认值和类型等信息。获取用setup语法糖创建的子组件实例时,获取的实例是没有子组件自定义的属性和方法的,此时我们需要通过。可以通过将属性或方法添加到。
2024-11-27 12:07:18
962
原创 vue3 开发利器——unplugin-auto-import
为 Vite、Webpack、Rollup 和 esbuild 按需自动导入 API。支持 TypeScript。由 unplugin 提供技术支持。每次都要写,哪怕是复制粘贴都会非常繁琐。并且每一个 下面都顶着一大坨 import,看着也十分难受。还记得 Vue 3 的组合式 API 语法吗?本文介绍的 unplugin-auto-import 就是为了解决这个问题而诞生的。刚开始写觉得没什么,但是后来渐渐发现,这玩意儿几乎每个页面都有啊!
2024-11-27 10:59:44
968
原创 vue3.0报错 error when starting dev server:ReferenceError: structuredClone is not defined
解决方案: nodejs 升级到18.12.1。
2024-11-27 10:32:56
2028
原创 VuePress的基本常识
VuePress 会为每个页面预渲染生成静态的 HTML,同时在页面被加载时,将作为 SPA 运行,这使得它具有很好的加载性能和搜索引擎优化(SEO)。因此,更新 RC 版本后,需要仔细阅读更新日志。总的来说,VuePress 是一个强大的静态网站生成器,特别适合创建文档和博客等静态网站,它提供了丰富的功能和灵活的配置,使得内容创作和网站构建变得简单而高效。今天大概了解了一下Vuepress,感觉很棒,看着极其简单,自己也想做一个,后续我大概率也会做一个用Vuepress为基础做的博客网站,很酷~
2024-10-24 15:19:44
441
转载 vue - vue使用webpack-bundle-analyzer进行代码打包的可视化数据分析
除了图片右下角“FoamTree”> logo之外都是应用的代码,与此同时,所有用了node_modules资源的部分都以"_vendor.js" 结尾;vue使用webpack-bundle-analyzer插件可以明确的看出每个文件模块的大小;可以看出:右上角最蓝色的部分占用的空间也是比较大的,因为用到了echarts的各省的地图数据;安装使用之后的效果如下:启动或打包项目,自动会在浏览器打开这个页面;配置完成之后,启动或打包项目,自动会在浏览器打开这个页面;修改vue.config.js。
2024-09-20 14:58:18
498
原创 npm i --legacy-peer-deps
升级到 7.x以上后,会出现上游依赖冲突;–legacy-peer-deps:安装时忽略所有 peerDependencie,默认使用npm 4-6版本的安装模式,安装过程中是会跳过对等依赖项。2、报错无法安装chromedriver的问题。
2024-09-05 15:25:24
612
1
原创 Linux系统下安装RabbitMQ超详细教程
官网RabbitMQ是一个开源的遵循AMQP协议实现的基于Erlang语言编写,支持多种客户端(语言),用于在分布式系统中存储消息,转发消息,具有高可用高可扩性,易用性等特征。
2024-04-18 10:24:25
3956
原创 阿里云服务器 使用Certbot申请免费 HTTPS 证书及自动续期
Certbot是一款免费且开源的自动化安全证书管理工具,由电子前沿基金会(EFF)开发和维护,是在Linux、Apache和Nginx服务器上配置和管理SSL/TLS证书的一种机制。Certbot可以自动完成域名的认证并安装证书。
2024-04-17 17:34:34
5871
1
原创 js占位符 ${} 使用
在 JavaScript 编程中,占位符是一种特殊的标记或符号,用于指示代码执行时应替换为实际值。占位符通常用于字符串拼接、格式化输出和动态生成代码等场景。本文将介绍 JavaScript 中常用的占位符,并提供相应的代码示例。字符串占位符是用于将变量值插入到字符串中的标记。在 JavaScript 中,最常见的字符串占位符是 ${},被称为模板字符串或者模板字面量。通过在 ${} 中放置变量名或表达式,可以将其值插入到字符串中。JavaScript 占位符。
2023-12-06 09:00:26
3208
原创 windows下nvm的安装和使用
nvm是一个nodejs的版本管理工具,它可以在同一台机器上安装和切换不同版本的node的工具。常用在一台机器不同项目需要不同的node环境时,对node版本的自由切换使用。
2023-11-09 13:20:24
1295
原创 Vue 使用 json-bigint 解决超过16位数字解析精度丢失问题
【代码】Vue 使用 json-bigint 解决超过16位数字解析精度丢失问题。
2023-07-20 12:09:30
1688
1
原创 windows 快速删除node_modules文件夹
S 除目录本身外,还将删除指定目录下的所有子目录。rmdir /Q /S 目录 删除文件夹(非空)/Q 安静模式,带 /S。
2023-06-21 13:55:34
531
hermes-android-0.77.0-debug.aar和react-android-0.77.0-debug.aar
2025-02-07
Xshell7 Xftp7 Xshell8 Xftp8 free for school;包含7和8两个版本
2025-01-10
mysql-installer-community-5.6.48.0.msi
2020-07-09
echart 地图全国省市js+json(超级全)
2020-06-10
echart 未压缩(不乱码) china.json
2020-06-02
linux远程(Xshell6+Xftp6)
2020-03-31
Insomnia REST API 客户端
2020-01-02
pandoc-2.7.3-windows-x86_64.zip
2019-11-29
TortoiseSvn小乌龟安装教程.zip
2019-11-12
Java常用工具类大全
2019-11-12
Unity2018官方汉化包
2019-11-02
pepflashplayer.dll
2019-11-01
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人