一篇文章学会 NestJS 的拦截器并且附带实战操作案例
在现代Web开发的世界中,NestJS以其灵活性和强大的功能立足,成为Node.js框架的佼佼者。其中一个引人注目的功能就是拦截器,这是一种可以让开发者更好地控制和补充HTTP请求循环的工具。拦截器让开发者可以在处理程序之前或之后“拦截”HTTP请求,这是解决一系列问题的基石。什么是NestJS拦截器简单来说,拦截器是一种特殊类型的服务,运行在路由处理程序方法之前和之后。它们在每次请求和响应的生命
服务端 · 阅读 8453 · 2023年12月30日 22:39

前端如何利用工厂模式
在探索优雅且高效的代码设计道路上,设计模式作为一盏指路明灯,引导着开发者们前进。今天,我们要深入了解的是工厂模式(FactoryPattern),一个在前端开发中应用广泛的设计模式。通过它,我们可以创建出一个对象的"工厂",专注于生产对象,从而实现对象创建与业务逻辑的具体实现分离。工厂模式的核心理念工厂模式的核心理念在于提供一个创建对象的接口,而不需要关心具体的类实现。在前端开发中,这个概念尤为
前端 · 阅读 1908 · 2024年5月26日 14:00

React 内置 Hook 之 useState 深度解析与使用案例
我们都知道React从16.8版本开始引入了Hooks特性,这对于函数式组件来说是一次质的飞跃。它使得我们可以在不必写成class形式的情况下,使用state和其他特性,使代码更简洁,易读和易于测试。在所有的Hooks中,useState 可谓是基础而且非常关键的一个。我们可通过它在功能组件中声明和操作state,这对于传统只能在class组件中操作state的思维是一次重大改变。这次,
前端 · 阅读 4990 · 2024年1月2日 22:57

在Cypress 中如何 Mock 自定义请求数据
在现代的前端开发中,端到端的测试成为了保证应用质量的关键部分。Cypress是一个强大的端到端测试框架,它允许我们模拟后端API的请求和响应数据,以便我们能在开发过程中测试前端功能,即使后端尚未完全实现。这篇文章将会教你如何在Cypress中模拟请求数据。Mock请求数据的静态方式Cypress提供了.intercept()方法,它允许我们拦截应用中的HTTP请求,并根据需要修改请求或响应。以下是
工程 · 阅读 4048 · 2024年4月11日 00:14

tailwindcss 如何配置默认单位为px
当我们刚开始使用tailwindcss框架处理项目中的样式,我相信很多人会跟我一样非常不习惯。tailwindcss默认支持的rem单位,而不是我们已经非常习惯的px,这其实给我们带来了不小的心智负担。这篇文章将介绍如何在项目中使用px单位设置元素的属性。方案方案一tailwindcss默认支持灵活设置元素距离属性,比如给div加一个16px的内边距,在属性后通过[]来设置具体的px;
前端 · 阅读 12191 · 2023年5月16日 23:24

React 发布订阅模式最佳实践:借助 mitt 实现组件解耦
发布订阅(Pub/Sub)模式是一种常见的设计模式,用于解耦组件之间的通信。在React中,组件间通信通常通过props或Context实现,但当应用复杂时,使用事件总线(EventBus)会更加灵活。mitt是一个轻量级的事件库,非常适合实现发布订阅模式。什么是mitt?mitt是一个极简的事件发射器(eventemitter),体积小(不到200字节),API简单,支持TypeScript。它
前端 · 阅读 253 · 1月10日 14:05

dayjs/moment.js 如何判断用户生日是不是在30天内?
要使用dayjs判断用户的生日是否在未来30天内,你可以使用以下步骤:安装dayjs以及isSameOrBefore插件。导入dayjs和插件。定义函数来判断用户生日是否在未来30天内。这里有一个示例代码来演示这个过程://1.安装dayjs和插件//npminstalldayjs//npminstalldayjs-plugin-isSameOrBefore//2.导入dayjs和插件constd
前端 · 阅读 2020 · 2024年8月28日 00:17

CentOS定时运行Cypress自动化测试用例并通过邮件通知结果
自动化测试的核心宗旨就是尽可能减少人工参与的情况下保证系统的稳定运行。当完成核心业务的自动化用例后,我们可以通过定时运行或者有新代码提交等等需要验证核心业务是否正常,并且通过邮件或者其他的手段通知研发同学自动化用例运行结果。本文详细记录Cypress自动化用例如何在centos服务器中定时运行,并且通过邮件通知自动化测试用例的运行结果。编写运行shell脚本为了配合centos的定时器功能
前端 · 阅读 4529 · 2023年6月26日 00:28

在Cypress中如何优雅的管理环境变量Env
如何在Cypress中有效地管理环境变量?为什么环境变量这么重要呢?因为它们可以帮助我们在不同的环境(开发、测试和生产)中运行测试,而不会泄露敏感信息,并且能够轻松地调整配置。Cypress提供了一套灵活的环境变量管理系统,让我们一起学习如何使用。什么是环境变量?在编程中,环境变量通常用于配置程序在不同环境中的行为。在前端测试框架Cypress中,我们可能需要根据不同的环境(例如本地开发环境、C
工程 · 阅读 1898 · 2024年4月9日 23:33

为什么 Vue.js 的 data 属性必须是一个函数?
在前端开发中,Vue.js简洁易用的设计和强大的功能深受开发者喜爱,然而,对于刚接触Vue.js的开发者来说,有些设计理念可能并不直观。例如,为什么在Vue组件中,data属性需要定义为一个返回对象的函数,而不是直接定义为一个对象?本文将通过深入探讨这个问题,帮助你理解背后的设计逻辑和技术考量。初识data属性在Vue组件中,我们通过data属性来定义组件的状态(状态即我们所说的数据)。最初始的想
前端 · 阅读 1772 · 2024年12月7日 23:32

