自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 问答 (1)
  • 收藏
  • 关注

原创 React的setState

setState()将对组件 state 的更新排入队列,并通知 React 需要使用更新后的 state 重新渲染此组件及其子组件。这是用于更新用户界面以响应事件处理器和处理服务器数据的主要方式setState()并不总是立即更新组件。它会批量推迟更新。这使得在调用setState()后立即读取this.state成为了隐患。为了消除隐患,请使用或者setState的回调函数(),这两种方式都可以保证在应用更新后触发除非返回false,否则setState()将始终执行重新渲染操作。

2024-03-27 19:20:55 593

原创 React项目根据 配置文件来动态生成路由

实现动态导入组件

2024-03-21 14:09:53 205

原创 代码优化之策略模式

策略模式的目的是让这些算法可以相互替换,从而使得算法的变化不影响使用这些算法的客户端。策略模式的核心思想是将使用算法的责任和算法本身分开,委派给不同的对象来管理。这种模式提高了代码的可维护性和扩展性,因为新的策略可以很容易地被添加到系统中。策略模式通常包含三种类别:抽象策略类、具体策略类、环境类。抽象策略类定义了一个公共接口,具体策略类实现了这个接口并封装了具体的算法,环境类持有一个抽象策略类的引用,并提供给客户端调用不同的策略。

2024-03-19 11:31:29 339

原创 vue项目运行不起来了

vue项目run不起来,解决过程

2024-03-18 14:15:54 353

原创 怎么编写一个webpack插件

在实际开发中,可能需要根据具体需求编写更复杂的插件逻辑,但整体原理是类似的:定义一个插件类,实现。通过以上步骤,你就可以编写并使用一个简单的 Webpack 插件了。钩子执行时打印一条信息,并向输出中添加一个名为。方法,在合适的时机注册钩子并执行相应的逻辑。它在 Webpack 构建过程中的。定义一个简单的插件类,名为。

2024-03-16 12:01:35 379 1

原创 vite配置和vscode共享配置

vite用的是rollup,区别于webpack,他用esbuild依赖预构建,把 CommonJS 、 UMD 的依赖库转换成 ESM 的形式,还使用了按需加载;运行 npm init @vite.js/app,生成项目,然后根据提示给项目起名字(vite-learning),选择框架(vue)、ts。运行 cd vite-learning,进入项目,在运行npm i,最后在命令框中直接打开vscode,运行'code .'配置好之后,点开vscode扩展配置,点击搜索框上面的搜索按键,选择推荐。

2023-08-24 15:10:49 428 1

原创 一张图理解JS原型链

三种创建对象的方式原型最终都指向Object.prototype, 然后通过__proto__指向null,终止循环。三种方式创建的对象都有原型,不断的给对象的prototype赋值对象,就生成一条链。其实就是创建的原型链上的依赖关系。函数通过 new Function() (所以指向它自己的原型!这三种创建对象的方式对应经典图中中间部分的Functions。所以图上的f1是盖在f2上的,o1是盖在o2上的。原型对象就是通过prototype指向的对象。实例对象就是通过三种方式创建的对象。

2023-06-15 14:30:08 104

原创 用chat-gpt理解原型链

当要访问对象的属性或方法时,JavaScript 引擎会先在对象自身属性中查找,如果没有找到,就去原型对象中查找,如果还是没有找到,就继续向上查找,直到找到为止。A:JavaScript中的原型链可以理解为一种对象之间的关系链,它允许对象继承另一个对象的属性和方法,而这个被继承的对象就是它的原型对象。每个对象都有一个原型对象,如果当前对象所在的原型对象中没有找到需要的属性或方法,它就会去原型对象的原型对象中查找,直到找到为止,这种链式查找的方式就是所谓的原型链。接着,我们需要理解“原型”的概念。

2023-06-09 10:34:56 134

原创 处理月份数据及渲染类似支付宝账单

后端返回一个账单,里面有生成时间。需要达到的效果是每个月份 的数据有个醒目的月份目录,然后向上滑动时,月份吸顶。使用了position: sticky;属性,加上position: -webkit-sticky;框架使用为uniApp。

2023-05-24 10:39:10 257 2

原创 uniapp开发注意事项-持续更新中

1:切换本地后台服务器时,去掉https中的s;去掉代理api,端口号后面跟上路径。2:manifest中的地址是指向h5的,main.js中的地址指向app。

2023-05-20 14:38:09 56

原创 Vue源码阅读(跟随黄轶老师的思路和其他)

在这个文件中,Vue初始化了生命周期、实践事件中心、初始化渲染、data、props、computed、watcher。分析:引入的initMixin方法调用Vue方法做参数,调用之后,Vue带上了this._init方法。src/core/instance/index.js 里面找到了Vue。Vue类似是用Function实现了类的结构和作用。只能通过 new 关键字初始化,然后会调用。后面的四个方法都有this._init了。

2023-05-05 11:20:00 276

原创 uniapp页面代码编写教程

页面通讯触发全局的自定义事件,附加参数都会传给监听器回调代码示例。

2023-04-24 21:12:58 497

原创 vue项目中webpack打包优化

-report是启用文件打包分析,打包完成后会自动打开一个网页,展示各模块的size。cdn配置时需注意有的js文件是node用的,有的是cdn用的。主要是cdn配置、打包分析插件安装、loader优化。

2023-04-13 18:02:00 192

原创 uniapp学习API之——其他(授权、收货地址、发票抬头等)

授权。

2023-03-23 19:49:22 568

原创 uniapp学习API之——推送、语音、实人认证、一键生成iOS通用链接

推送。

2023-03-23 19:45:30 448

原创 uniapp学习API之——支付

检查是否存在未关闭的订单 (iapChannel.restoreCompletedTransactions, 可选在合适的时机检查)服务器验证票据有效后在客户端关闭订单 (iapChannel.finishTransaction)通过支付通道获取产品列表 (iapChannel.requestProduct)客户端接收苹果返回的支付票据发送到服务器,在服务器请求苹果服务器验证支付是否有效。请求支付,传递产品信息 (uni.requestPayment)获取支付通道 (uni.getProvider)

2023-03-23 19:42:45 990

原创 uniapp学习API之——第三方服务(登入、分享)

小程序中用户点击分享后,在 js 中定义 onShareAppMessage 处理函数(和 onLoad 等生命周期函数同级),设置该页面的分享信息。在 manifest.json 的 App SDK 配置里,勾选微信消息及朋友圈,并填写 appid,如需在iOS平台使用还需要配置通用链接。Android和iOS都有应用注册分享接口的机制,基本上所有有接收分享内容功能的应用,都会注册分享接口。uni-app的App引擎已经封装了微信、QQ、微博的分享SDK,开发者可以直接调用相关功能。

2023-03-23 19:38:49 459

原创 uniapp学习API之—界面之宽屏适配、字体、下拉刷新

在 js 中定义 onPullDownRefresh 处理函数(和onLoad等生命周期函数同级),监听该页面用户下拉刷新事件。开始下拉刷新,调用后触发下拉刷新动画,效果与用户手动下拉刷新一致。动态加载网络字体,文件地址需为下载类型。设置 topWindow 的样式 ,参数说明。css 样式对象,需写驼峰css属性 ,获取 rightWindow 的样式。设置 rightWindow 的样式。获取 leftWindow 的样式。设置 leftWindow 的样式。将rpx单位值转换成px。

2023-03-23 18:59:58 736

原创 uniapp学习API之——媒体、设备、键盘、界面、文件、绘画、

从本地相册选择图片或使用相机拍照。

2023-03-23 18:48:21 1760 2

原创 uniapp学习API之数据缓存

缓存中指定的 key 中,会覆盖掉原来该 key 对应的内容,这是一个。缓存中指定的 key 中,会覆盖掉原来该 key 对应的内容,这是一个。获取指定 key 对应的内容。获取指定 key 对应的内容。同步清理本地数据缓存。将 data 存储在。

2023-03-23 15:14:24 172

原创 uniapp学习API之页面跳转

发起请求 uni.request(OBJECT)上传和下载 uni.uploadFile(OBJECT)长连接 uni.connectSocket(OBJECT)发由接口创建,监听 WebSocket 接受到服务器的消息事件mDNS 服务、UDP 通信。

2023-03-23 14:35:25 361

原创 uniapp学习二——组件(二)

布局(类似elementUI的分栏布局)、

2023-03-23 11:55:33 303

原创 uniapp学习二——组件(一)

view 基本容器scroll-view 滑动组件swiper 轮播图组件类似于网页开发中使用媒体查询来适配大屏小屏,match-media是一个可适配不同屏幕的基本视图组件。可以指定一组 media query 媒体查询规则,满足查询条件时,这个组件才会被展示。

2023-03-23 11:08:43 1425

原创 uniapp学习知识精简一

(1).msg:错误消息。(2).url:发生错误的页面的地址。(3).line:发生错误的代码行。传统开发中,用原生的 JavaScript DOM 操作函数对 DOM 进行频繁操作的时候,浏览器要不停的渲染新的 DOM树,导致页面看起来非常卡顿。vue 是单页面应用,使页面局部刷新,不用每次跳转页面都要请求所有数据和 DOM ,这样大大加快了访问速度和提升用户体验。只要你遵守以上规则,如何组织代码随你便。

2023-03-22 14:33:52 131

空空如也

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

TA关注的人

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