从上到下按层打印二叉树
从上到下按层打印二叉树问题解决方案BFS广度遍历/***Definitionforabinarytreenode.*functionTreeNode(val){*this.val=val;*this.left=this.right=null;*}*//***@param{TreeNode}root*@return{number[][]}*/varlevelOrder=function(root){
算法 · 阅读 1933 · 2022年6月18日 11:42

如何封装React无限滚动加载列表组件【含源码】
前言由于需要考虑后端接口的性能问题,我们在请求业务数据列表的时候并不能直接请求全量数据。所以我们在请求数据时常见的方式是做分页查询。对于前端交互而言,我们需要考虑如何优雅的让用户触发请求下一页数据的接口。常用的方法有两种:1.提供显示的分页器,让用户自己手动点击下一页;2.业务滚动到某个阈值时自动触发下一页请求。对于移动端,滚动加载的交互是更加优雅的处理方式。对于滚动加载的能力,我们需要一个公共的
前端 · 阅读 6476 · 2023年5月19日 22:44

前端离线存储能力:如何在 React 中巧妙运用IndexedDB
当我们开发复杂的Web应用时,常常需要在客户端存储大量数据。你可能听过localStorage或者sessionStorage,但它们在存储空间和功能上都有限。而今天我们要聊的,是一个功能更强大的技术:IndexedDB。IndexedDB是什么IndexedDB是一个运行在浏览器中的非关系型数据库。它让你能够存储大量的数据,并具有高性能的查询能力。不像localStorage只能存储字符串,In
前端 · 阅读 3145 · 2024年1月11日 23:29

NestJS 如何支持国际化(i18n)
在当今全球化的互联网环境下,为软件添加国际化(Internationalization,通常简称为i18n)支持变得至关重要。NestJS作为一个现代、功能丰富的Node.js框架,提供了强大的国际化机制。本文将指导您如何在NestJS项目中实现i18n功能。i18n是国际化的缩写,数字18代表起始字母"I"和结束字母"n"之间的字母数。在NestJS中实现i18n意味着您的应用可以支持多种语言,
服务端 · 阅读 2350 · 2024年1月9日 23:31

React 内置 Hook 之 useCallback 深度解析与使用案例
ReactHooks引入了一种全新的方式来处理state和其他React特性,让我们可以以更加声明式的风格去编写代码,从而使代码更加易读和可维护。其中,useCallback是一个常被提及但可能被大家误解或未能充分利用的hook。useCallback为我们提供了避免不必要渲染以及记住函数实例的能力,从而在性能优化上给我们开发者带来了新的手段。什么是useCallback简单来说,useCallb
前端 · 阅读 4216 · 2021年12月20日 13:15

如何在 React 中加载本地 Icon 资源
React作为一个构建用户界面的JavaScript库,提供了便捷的方式去实现复杂的功能。其中加载本地Icon资源也是一个常用的需求。在这篇文章中,我们会通过一个简单的例子来展示如何在React项目中加载本地的Icon资源。准备Icon资源首先,你需要有一些Icon资源。通常这些资源是以.svg、.png、.jpg等格式存在。为了本教程的需要,我们假设你已经有了一些SVG格式的Icon,并且它们存
前端 · 阅读 2275 · 2024年2月24日 01:35

Next.js 的 ISR 模式是什么?它有什么作用?
在当今的前端开发领域,我们经常会遇到一个词:SSG(静态站点生成)和SSR(服务器端渲染)。Next.js是一个流行的React框架,它支持这两种渲染模式,并在此基础上引入了一种名为ISR(增量静态重新生成)的强大新特性。那么,ISR究竟是什么?它具有什么样的作用?ISR的定义ISR模式是Next.js在9.5版本中引入的一项特性,全称是IncrementalStaticRegeneration。
前端 · 阅读 5154 · 2024年3月2日 20:00

一篇文章学会如何使用 NestJS 过滤器处理全局异常情况
在实际的应用开发中,你或许遇到过异常处理机制不统一或错误信息展示混乱的现象。为了解决这些问题,NestJS提供了一个优雅的解决方案:过滤器(Filter)。本文将从实际出发,向你介绍NestJS过滤器的基本概念,重要用途和深度实例。什么是NestJS的过滤器当一个程序运行过程中发生了异常,并且这个异常没有被捕获处理,用户就会看到一些奇怪的错误信息,这种现象对用户体验非常不好。此时,NestJS的过
服务端 · 阅读 8524 · 2023年12月30日 23:00

如何基于Scrcpy 实现远程调试?
在开发Android应用时,远程调试是一项非常实用的功能,它可以让开发者不必每次都连接物理设备即可进行应用测试和调试。Scrcpy是一款开源的Android设备控制和显示工具,它通过USB(或者通过TCP/IP进行网络传输)连接设备,提供了高性能的屏幕镜像和操作能力。本文将详细介绍如何使用Scrcpy进行远程调试。环境准备安装ADB:Scrcpy依赖于AndroidDebugBridge(ADB
前端 · 阅读 2251 · 2024年7月15日 13:33

JavaScript 实现快速排序算法
快速排序,一种被广泛认可和使用的排序算法,因为其高效率和优秀的平均案例性能而闻名。它的核心理念是“分而治之”,通过递归的方式将大问题化成小问题解决。本篇文章将介绍如何使用JavaScript来实现这个算法,让你的数组排列得井井有条。基本思想快速排序的基本思想非常简单:选择基准值(Pivot):从数组中选择一个元素作为基准值,通常选择第一个元素或最后一个元素。分区操作(Partitioning):
前端 · 阅读 3173 · 2022年3月24日 12:27

