响应式设计:使用REM实现自适应字体缩放
在构建现代网站时,支持不同设备的屏幕尺寸是前端开发者面临的重要挑战之一。为了提供更好的用户体验,网页上的内容,尤其是文字需要能够随着屏幕尺寸的变化而适应不同的显示需求。相比于传统的固定单位(如px),rem(rootem)单位提供了一种更加灵活且容易实施的解决方案,使得我们能够轻松实现屏幕放大缩小时页面文字能够跟随屏幕比例自动调整的设计。在本教程中,我将带大家了解何为rem单位,并演示如何使用它来
前端 · 阅读 2538 · 2024年1月9日 15:33

XSS防御:内容安全策略 CSP 使用实战与配置
公司部门安全合规改造计划,要求所有的Web站点统一添加CSP规则。对于CSP机制我只是之前在应付面试的时候背过相关的概念,并没有真正在项目中实践过。所以希望借助本次改造任务好好理解并实践CSP机制。CSP的全称是ContentSecurityPolicy,翻译成中文就是内容安全策略。CSP 通过告诉浏览器一系列规则,严格规定页面中哪些资源允许有哪些来源,不在指定范围内的通通拒绝。
前端 · 阅读 3604 · 2023年11月22日 21:23

【手写组件库之日历组件教程第一篇】基于React实现日历组件详细教程
日历组件是常见的日期时间相关的组件,围绕日历组件设计师做出过各种尝试,展示的形式也是五花八门。但是对于前端开发者来讲,主要我们能够掌握核心思路,不管多么奇葩的设计我们都能够把它做出来。本文将详细分析如何渲染一个简单的日历组件。在线演示DEMOhttps://calendar.levenx.com/#/simple-calendar实现步骤计算每个月中具体包含的日期因为日历需要把当前月的每一天都展
前端 · 阅读 3795 · 2023年8月24日 22:06

如何使用 Next.js 和 i18next 实现网站多语言版本翻译
在构建一个面向全球受众的现代网络应用程序时,提供多语言支持变得至关重要。Next.js作为一个功能丰富的React框架,它支持国际化(i18n)的功能,让开发者能够轻松地创建多语言网站。在这篇教程中,我将指导你如何使用Next.js和i18n实现网站翻译。实现步骤一、安装依赖Next.js支持多种国际化库。对于本教程,我们将使用next-i18next,这是一个为Next.js项目优化的i18n库
前端 · 阅读 4474 · 2024年2月23日 15:37

基于 NestJS 操作 TypeORM 中的多对多 ManyToMany
TypeORM是一个在TypeScript和JavaScript(ES7,ES6,ES5)中提供了许多开箱即用特性的ORM,它能够改善我们处理数据库操作的效率与可维护性。在复杂的应用开发过程中,数据间的关系处理显得尤其重要。今天我们将在NestJS中探索TypeORM的ManyToMany(多对多)关系,这是一种常见且强大的数据模型关系。在建立应用程序时,我们通常需要处理大量的增删查改(CRUD)
服务端 · 阅读 5308 · 2024年1月1日 22:59

Git 如何合并多个 Commit 提交
当你在开发软件时,频繁的提交(commit)能帮你更好地追踪代码变化。然而,当一系列小的改动造成了大量的提交记录,合并(squash)这些提交能让历史更加清晰易读。在Git中,我们可以通过交互式rebase来实现这一点。现在,我会带你用一种简单易懂的方式,一步步地学会如何合并多个commit。Rebase交互式操作交互式rebase是Git的一个强大功能,它允许你重写历史—即重写连续的提交序列。你
工程 · 阅读 3346 · 2024年4月10日 00:31

React Query:React 中优雅简单的接口数据状态管理
如何通过Ajax或者Fetch优雅的请求后端接口,这是所有复杂前端项目都需要考虑处理的事情。在React项目中,有不少成熟的Hook能够让开发者管理整个请求过程中的数据和状态,例如axios-hooks、use-http、react-query、swr甚至ahook中提供的useRequest。我曾经很长一段时间是直接使用ahook中的useRequest,但是有的项目中不需要ahook中的其他h
前端 · 阅读 2381 · 2023年12月28日 20:33

如何使用 CSS 处理文字溢出省略号
text-overflow:ellipsis;是一种CSS属性,主要用于处理单行或者多行文本内容超出其显示区域时的情况。当文本内容过长,超出其容器布局的宽度时,我们通常不希望文本直接溢出显示,而是希望通过更优雅的方式来处理。这时我们就可以使用text-overflow:ellipsis;这个属性来让溢出的文本显示为"…”。具体如何使用呢?CSS代码如下:.my-element{white-spac
前端 · 阅读 1328 · 2021年12月19日 22:36

Git 如何检出 checkout 远程分支代码
当我们在使用Git这个强大的版本控制系统时,会经常需要与远程仓库进行交互,比如克隆、推送、拉取、合并等操作。今天我们聚焦于一个非常实用的操作:如何checkout远程分支。可能你是想要检出一个同事新开发的功能,或者是为了测试最新的部署代码,不管怎样,掌握这个技能对每一个使用Git的开发者来说都是必备的。什么是远程分支在Git中,远程分支是对远程仓库分支的引用。它们是你不能直接修改的只读分支。当你想
工程 · 阅读 3520 · 2024年4月11日 23:50

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