乐闻世界logo
搜索文章和话题
主页文章专栏面试题问题

TA的文章

查看更多
 Webpack 面试题汇总

Webpack 面试题汇总

什么是前端模块化?AMD、CMD、CommonJS、ES6模块化之间的区别是什么?模块化是指将一个复杂的系统分解为多个模块以方便编码。模块化规范的实现是为了达成浏览器端模块化的目的。AMD是一种Javascript模块化规范,采用异步的方式去加载依赖的模块。不用转换代码的情况下直接运行在浏览器环境。依赖前置,提前执行。代表库requirejsCMD是一种Javascript模块化规范,依赖就近
TypeScript 中的 interface 和 type 有什么区别?应该如何选择?

TypeScript 中的 interface 和 type 有什么区别?应该如何选择?

TypeScript中的interface和type都是声明自定义类型的方式,但它们有一些区别,适用于不同的使用场景。两者使用案例interfaceinterface主要用于描述对象的形状或者类的结构,这是它最经常的应用场景。interface使用示例:interfacePerson{name:string;age:number;}functiongreet(person:Person){re
基于 Verdaccio 构建自己的私有 npm 仓库

基于 Verdaccio 构建自己的私有 npm 仓库

无论你是公司的开发者,还是个人开发者,你可能都听说过或者使用过npm,这是一个使用广泛的JavaScript包管理器。但是,你是否遇到过以下的问题:你需要一个私有的包存放地方,或者你需要在离线环境下使用包,或者你有一些需要测试的包不能上传到公共npm上。这时,你就可以选择使用Verdaccio搭建一个自己私人的npm仓库。Verdaccio是什么?Verdaccio是一种轻量级、易于扩展的私有np
一文讲清 TypeScript 的 Omit 和 Exclude 使用方式与功能对比

一文讲清 TypeScript 的 Omit 和 Exclude 使用方式与功能对比

TypeScript为了开发者提供了基础数据类型,同时也允许开发者使用interface、type等指令自定义复杂结构类型。与编程变量类似,开发者不能无节制的新增类型,类型的整体集中管理是降低维护成本的重要手段。对于更多复杂的类型,开发者可以基于基础类型进行衍生,TypeScript提供了丰富的内置的工具类型,例如本文将会介绍的Omit 和 Exclude。基于这些工具类型
基于Nestjs实现node发送邮件

基于Nestjs实现node发送邮件

背景效果落地方案依赖安装npminstall@nestjs-modules/mailer初始化module//app.module.ts@Module({imports:[MailerModule.forRoot({transport:{host:'smtp.exmail.qq.com',port:465,ignoreTLS:false,secure:true,auth:{user:'bot@fm
Git 如何撤销或者还原最近的提交记录

Git 如何撤销或者还原最近的提交记录

在日常开发过程中,使用Git进行版本控制是一项常规操作,有时候我们可能会意外地提交了一些不应该提交的文件,或者提交信息写错了,Git提供了多种方式让我们可以轻松撤销这些提交。一、撤销最后一次的提交如果你想要撤销最后一次的提交,并且希望撤销后重新编辑代码与提交信息,可以使用gitreset命令。gitreset--softHEAD^使用--soft参数将会撤销最后一次提交,但是保留更改的内容在工作目
Redux-actions 使用方法

Redux-actions 使用方法

前言Redux的诟病是重复的模块代码太多,各路大佬都开始尝试解决这些问题,Redux-actions悄然而生。刚开始使用Redux-actions时遇到一些问题,那么专门写一篇博客全面详细的记录Redux-actions的使用。安装npminstallredux-actions//index.jsximportReactfrom'react';importReactDOMfrom&
PNPM Workspace - 如何高效优雅的管理 Monorepo 项目

PNPM Workspace - 如何高效优雅的管理 Monorepo 项目

在现代的软件开发中,Monorepo(单仓库)模式越来越受到青睐。Monorepo允许你将多个项目置于同一个版本控制系统中管理,简化了很多项目间依赖和协调的工作。然而,Monorepo管理也并非易事,尤其是当涉及到JavaScript生态系统中的依赖管理时。本文将介绍如何使用PNPM来优雅地管理Monorepo,确保依赖清晰、高效和简洁。PNPM简介PNPM是一个快速、节省磁盘空间的包管理工具
Taro 集成 IconPark 图标库的步骤与注意事项

Taro 集成 IconPark 图标库的步骤与注意事项

在现代前端开发中,图标库是不可或缺的一部分。IconPark是由阿里巴巴出品的开源图标库,拥有丰富且设计统一的图标资源,支持多种框架和平台。Taro作为一款多端开发框架,支持React语法,集成IconPark不仅能提升项目的视觉效果,还能保证跨端一致性。本文将从零开始,详细介绍如何在Taro项目中使用IconPark,涵盖安装、配置、调用及样式调整等内容,帮助你快速上手。一、准备工作已安装Nod
React 内置 Hook 之 useCallback 深度解析与使用案例

React 内置 Hook 之 useCallback 深度解析与使用案例

ReactHooks引入了一种全新的方式来处理state和其他React特性,让我们可以以更加声明式的风格去编写代码,从而使代码更加易读和可维护。其中,useCallback是一个常被提及但可能被大家误解或未能充分利用的hook。useCallback为我们提供了避免不必要渲染以及记住函数实例的能力,从而在性能优化上给我们开发者带来了新的手段。什么是useCallback简单来说,useCallb
Flutter 设置 Lottie 动画的详细教程

Flutter 设置 Lottie 动画的详细教程

Lottie是一个流行的库,可以让你在移动应用中轻松添加高质量的动画。它支持Android、iOS、Web以及其他多个平台,因此非常适合跨平台框架Flutter。在这篇教程中,将简要介绍如何在Flutter应用中使用Lottie动画。什么是Lottie?Lottie是Airbnb设计的一个库,可以帮助开发者轻松添加动画到任何应用。Lottie动画是基于JSON文件的,这些JSON文件通过Adob
基于pnpm 实现前端 Monorepo项目管理

基于pnpm 实现前端 Monorepo项目管理

随着软件开发项目变得越来越庞大和复杂,如何有效管理和维护代码库成为了一个重要的问题。一种流行的解决方案是Monorepo,也就是在一个版本控制系统中管理所有的项目代码。什么是MonorepoMonorepo是一种项目代码管理方式,指单个仓库中管理多个项目,有助于简化代码共享、版本控制、构建和部署等方面的复杂性,并提供更好的可重用性和协作性。什么是Pnpmpnpm 是一款快速、高效的Jav
React 内置 Hook 之 useReducer 优雅管理状态

React 内置 Hook 之 useReducer 优雅管理状态

在开发React应用程序时,状态管理一直是一个需我们重点关注的主题。而在React16.8的版本中,新引入的HooksAPI使得我们可以更加方便的在函数式组件中使用状态和其他React特性而无需写class。本文就详细的为你介绍一个非常强大的Hook:useReducer,它为复杂状态的管理提供了出色的解决方案。什么是useReduceruseReducer就如同它的名字暗示的那样,它是一个允许你
如何在同一端口上同时运行TCP和UDP服务

如何在同一端口上同时运行TCP和UDP服务

在计算机网络领域,端口是至关重要的概念。它们用于标识网络上的特定进程或服务,使得数据包能够准确地传输到目标应用程序。TCP(传输控制协议)和UDP(用户数据报协议)是两种主要的传输层协议,各具有不同的特点和用途。那么,一个端口是否可以同时用于TCP和UDP的通信呢?本文将深入探讨这个问题,并解释其背后的技术实现和实际应用场景。什么是端口?想象一下你的电脑是一座大楼,而端口就是大楼中的各个房间。
CSS 响应式布局方法汇总

CSS 响应式布局方法汇总

一、媒体查询@media关键分辨率768px992px1200px@media(min-width:768px){//=768的设备}@media(min-width:992px){//=992的设备}@media(min-width:1200){//=1200的设备}@media(max-width:1199){//=1199的设备}@media(max-width:991px){//=991的
tailwindcss 如何配置默认单位为px

tailwindcss 如何配置默认单位为px

当我们刚开始使用tailwindcss框架处理项目中的样式,我相信很多人会跟我一样非常不习惯。tailwindcss默认支持的rem单位,而不是我们已经非常习惯的px,这其实给我们带来了不小的心智负担。这篇文章将介绍如何在项目中使用px单位设置元素的属性。方案方案一tailwindcss默认支持灵活设置元素距离属性,比如给div加一个16px的内边距,在属性后通过[]来设置具体的px;
Mongoose 如何查询某个字段为空、null、不存在的数据

Mongoose 如何查询某个字段为空、null、不存在的数据

在使用MongoDB数据库进行数据管理时,经常会遇到需要查询某些字段为空或者不存在的文档的情况。Mongoose为MongoDB提供了直观的建模和查询语法。本文将介绍如何在Mongoose中查询具有空字段的文档,确保能够轻松处理各种数据查询需求。MongoDB中的「空」有哪些首先,我们需要理解在MongoDB中,一个字段被认为是空的情况可能有几种不同的状态:字段值为null。字段不存在。字段值为空
Recoil 如何优雅高效地重置和恢复某个状态

Recoil 如何优雅高效地重置和恢复某个状态

Recoil是一个为React提供状态管理的库,它通过原子(Atoms)和选择器(Selectors)的概念让状态管理变得更加直观和模块化。在某些情况下,我们可能需要将Recoil的状态(atom或selector)重置为其初始值。我们将探索如何使用Recoil优雅高效地重置和恢复状态。基础概念在深入了解重置和恢复状态之前,让我们快速回顾一下Recoil的几个基本概念:Atom:Atom是Rec
一篇文章学会如何使用 NestJS 过滤器处理全局异常情况

一篇文章学会如何使用 NestJS 过滤器处理全局异常情况

在实际的应用开发中,你或许遇到过异常处理机制不统一或错误信息展示混乱的现象。为了解决这些问题,NestJS提供了一个优雅的解决方案:过滤器(Filter)。本文将从实际出发,向你介绍NestJS过滤器的基本概念,重要用途和深度实例。什么是NestJS的过滤器当一个程序运行过程中发生了异常,并且这个异常没有被捕获处理,用户就会看到一些奇怪的错误信息,这种现象对用户体验非常不好。此时,NestJS的过
Next.js 的 ISR 模式是什么?它有什么作用?

Next.js 的 ISR 模式是什么?它有什么作用?

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

TA的教程专栏

查看更多
TailwindCSS 使用指南

TailwindCSS 使用指南

Tailwind CSS 是一个流行的 CSS 工具库,它提供了一系列预定义的 CSS 类,可以帮助您轻松地创建漂亮的用户界面。本教程将帮助您深入了解 Tailwind CSS 的高级功能和技术,以帮助您更好地利用这个强大的工具库。 在本教程中,您将学习到: 如何使用 Tailwind CSS 的主题和变量来自定义外观和样式; 如何在 Tailwind CSS 中配置和使用插件来扩展其功能; 如何在 Tailwind CSS 中使用 JS 钩子和样式函数来创建动态样式; 如何在 Tailwind CSS 中创建响应式布局和样式; 如何在 Tailwind CSS 中使用 PurgeCSS 来优化和精简 CSS。 本教程适合那些已经有一定 Tailwind CSS 开发经验,并想要深入了解其高级功能和技术的开发人员。无论您是初学者还是有一定经验的 Tailwind CSS 开发人员,本教程都将为您提供宝贵的学习资源和实践经验。 让我们开始您的 Tailwind CSS 进阶之旅吧!
Typeorm 使用指南

Typeorm 使用指南

TypeORM 是一个流行的 TypeScript ORM(对象关系映射)库,它可以帮助您轻松地将 TypeScript 类映射到关系型数据库表。本教程将帮助您深入了解 TypeORM 的高级功能和技术,以帮助您更好地利用这个强大的库。 在本教程中,您将学习到: 如何使用 TypeORM 中的高级查询和过滤功能来查询和操作数据库; 如何使用 TypeORM 中的实体继承和关系映射来创建复杂的数据模型; 如何使用 TypeORM 中的迁移和数据填充来管理数据库模式和数据; 如何在 TypeORM 中使用存储过程和触发器来扩展数据库功能; 如何在 TypeORM 中使用多数据库和分布式事务来管理复杂的应用程序。 本教程适合那些已经有一定 TypeORM 开发经验,并想要深入了解其高级功能和技术的开发人员。无论您是初学者还是有一定经验的 TypeORM 开发人员,本教程都将为您提供宝贵的学习资源和实践经验。 让我们开始您的 TypeORM 进阶之旅吧!
如何打造属于自己的React组件库

如何打造属于自己的React组件库

随着组件化开发成为前端开发的主流,拥有一套定制化的React组件库变得极其重要。本系列教程将指导你如何设计、开发和维护一个React组件库,不仅满足项目需求,而且易于共享和复用。我们将从React组件的基础知识开始,逐步讲解如何构建可复用组件、如何管理组件状态和生命周期、以及如何通过Prop Types和TypeScript进行类型检查。此外,你还将学习到如何利用Storybook来展示组件、使用Jest和Enzyme进行单元测试,以及如何将你的组件库发布到npm。 通过本系列教程的学习,你将获得创建自己React组件库的全部技能,为你的开发工作带来前所未有的效率和乐趣。
Mongoose 使用指南

Mongoose 使用指南

在本教程中,我们将逐步探索Mongoose——一个在Node.js环境下与MongoDB数据库协同工作的强大库。从基本概念的铺垫到实用技巧的深度剖析,本系列覆盖了Schema设计、数据类型定义、模型创建、查询优化、插件扩展等核心主题。你将学习如何利用Mongoose的Schema来定义数据结构,实现数据验证和类型转换,以及如何通过模型进行数据的增删改查操作。 此外,教程将深入Mongoose的高级特性,包括但不限于索引管理、聚合框架、事务处理和数据迁移。我们将通过丰富的示例和练习,教你如何运用Mongoose来处理复杂查询、关联数据以及性能调优。 随后,本系列教程将深入讨论更高级的特性,如中间件(pre和post hooks)、数据校验、虚拟属性和实例方法,以及如何使用聚合管道进行复杂查询。此外,我们将详细介绍如何处理关系型数据,在Mongoose中实现文档的嵌入和引用,以及如何优雅地处理这些关系。 为了将理论与实践相结合,每一部分内容都包含了逐步的代码示例和实战小项目,帮助你更好地理解和运用Mongoose的功能。我们还会讨论性能调优、错误处理和最佳实践,以确保你能够构建既健壮又高效的Node.js应用。
CSS 入门指南

CSS 入门指南

CSS 是一种用于描述文档样式和布局的样式表语言,它是 Web 开发中不可或缺的一部分。本教程将帮助您从零开始学习 CSS,了解其基本概念和语法,并逐步深入学习其高级特性和实践技巧。 在本教程中,您将学习到: CSS 基础知识,如选择器、盒模型、布局等; CSS 颜色、字体、背景和边框等样式属性的使用; CSS 媒体查询和响应式设计的实现; CSS 动画和过渡的实现技巧; CSS 预处理器,如 Sass、Less 的使用; CSS 框架,如 Bootstrap、Tailwind CSS 的使用。 本教程适合那些想要从零开始学习 CSS 的初学者。无论您是 Web 开发新手还是有一定经验的开发人员,本教程都将为您提供宝贵的学习资源和实践经验。 让我们开始您的 CSS 入门之旅吧!
React 入门宝典

React 入门宝典

React 是一个流行的 JavaScript 库,用于构建大规模、高性能的 Web 应用程序。本教程将帮助您从 React 的基础知识入门开始,逐步深入掌握 React 的高级概念和技术,以成为一名优秀的 React 开发人员。 在本教程中,您将学习到: React 的基础概念和核心原则,如组件、Props、State、生命周期等; 如何使用 JSX 语法编写 React 组件和模板; 如何使用 React 的事件处理、表单处理、样式管理等功能; 如何使用 React Router 实现单页应用程序; 如何使用 Redux 进行状态管理和数据流控制; 如何使用 React 的高级技术,如 Hooks、Context、Portal 等。 本教程适合那些已经有一定 JavaScript 编程经验,并希望进一步学习 React 技术的开发人员。无论您是初学者还是有一定经验的 React 开发人员,本教程都将为您提供宝贵的学习资源和实践经验。 让我们开始您的 React 之旅吧!
Web项目国际化通关手册

Web项目国际化通关手册

React 国际化是指将应用程序适配到不同的语言和地区的过程。在全球化时代,为您的应用程序提供多语言支持将为您的用户提供更好的用户体验,并帮助您扩大全球市场。本教程将帮助您学习如何在 React 应用程序中实现国际化。 在本教程中,您将学习到: React 国际化的基本概念和原则; 如何使用 React Intl 库来实现国际化; 如何在 React 中处理多语言文本、日期、时间和货币等; 如何在 React 中实现动态文本替换; 如何在 React 中切换不同的语言版本; 如何测试和调试国际化应用程序。 本教程适合那些已经有一定 React 开发经验,并想要扩展其应用程序的全球化能力的开发人员。通过本教程,您将学习如何使用 React Intl 库和其他现有工具来实现国际化,从而为您的应用程序提供更广泛的用户群和更好的用户体验。 让我们开始您的 React 国际化之旅吧!
Nodejs 学习指南

Nodejs 学习指南

这是一套全面的Node.js学习指南,覆盖了从基础知识到高级应用的全部必备技能。本教程系列将带领你进入Node.js的世界,一个强大而灵活的JavaScript运行时环境,它让JavaScript不仅仅能在浏览器中运行。你将了解到如何设置Node.js环境、利用npm管理包,以及如何构建第一个应用程序。随着课程的深入,我们会探讨异步编程模型、中间件、RESTful API设计、数据库集成、安全性、测试以及性能优化等进阶主题。 无论你是初学者还是有志于成为全栈开发者,本教程都将为你提供一个扎实的Node.js学习基础和实践路径。
NestJS 最佳实践手册

NestJS 最佳实践手册

在这个全面的NestJS最佳实践手册中,我们将一起探索如何使用NestJS这个强大的Node.js框架来构建可维护、可扩展的企业级应用。从NestJS的基本概念和架构出发,到深入了解其依赖注入、模块化和微服务等核心功能,本手册将为你提供一系列的专业指导和实用技巧。 我们将讨论如何有效地利用TypeScript的强类型能力,如何整合ORM以实现数据库操作,以及如何应用中间件、守卫、过滤器和拦截器来增强应用的安全性和性能。 通过实际案例和模式分析,这本手册不仅会教你如何编写代码,更重要的是教你如何思考NestJS应用的设计和结构,让你成为在现代后端开发领域中的专家。
Nextjs 全栈开发手册

Nextjs 全栈开发手册

在这个系列教程中,您将踏上一段探索 Next.js 的精彩旅程。Next.js 是一款基于 Node.js 和 React 的现代化框架,专为构建快速、静态生成和服务器端渲染的Web应用而设计。无论您是前端新手还是经验丰富的开发者,本教程都将以步骤分解的方式带领您从基础概念到高级功能,全面了解 Next.js 的核心特性。 我们将从 Next.js 的安装和基本配置开始,逐步深入到路由、状态管理、构建优化以及部署策略。通过实际案例,您将学会如何利用 Next.js 提升开发效率,提高应用性能,并构建出具有优秀SEO表现和用户体验的Web应用。 随着本系列教程的深入,您将掌握 Next.js 最佳实践,与此同时,我们还将涵盖如何整合RESTful API和GraphQL、使用静态站点生成(SSG)与服务器端渲染(SSR)的先进技术,以及如何借助 Vercel 等平台,实现无缝的生产部署。 让我们一起开启这次学习之旅,探索 Next.js 带来的无限可能,为您的前端技能树添上一笔重要的一笔。

TA的问题

查看更多

TA的面试题

查看更多
个人成就
  • 获得 0 次点赞
  • 内容获得 0 次评论
  • 获得 0 次收藏