cross-env介绍
`cross-env` 是一个 **Node.js 工具**,用来在 **不同操作系统之间设置环境变量而不出错**,尤其在 **Windows 和 Unix 系统差异性**明显的项目中非常有用。 一、为什么需要 `cross-env`在 Node.js 项目中经常会在脚本中设置环境变量,例如:```...
OAuth 2 提供方
自己搭建一个 **OAuth 2 提供方(Authorization Server)**,实现统一认证,思路可以分为三层理解: 一、你要搭建的系统本质上干什么?你搭建的 OAuth2 系统,是为了让公司内部(或外部)的多个应用,通过一个统一认证中心,完成用户认证与授权流程。比如:* A 应用:业务系...
OAuth 2.0介绍
OAuth 2.0 是一种**授权协议**(authorization framework),用于让第三方应用在**不获取用户密码的前提下**,访问用户在其他服务上的资源(如用户的谷歌照片、GitHub 仓库、微博信息等)。它解决的问题简单说就是:“我想授权某个应用访问我的某些账户信息,但不想给它我...
TypeScript中的=>箭头
在 TypeScript(也包括 JavaScript)中,`=>` 是 **箭头函数(Arrow Function)** 的语法,用来定义一个匿名函数,也叫“箭头函数表达式”。 一、基本语法```tsconst fn = (参数) ={ // 函数体};```比如:```tsconst add ...
TypeScript中的Type
在 TypeScript 中,`type` 是用来定义 **类型别名(Type Alias)** 的关键字。它的作用是给一个复杂或重复的类型结构起个名字,便于复用和代码更清晰。 一、基本语法```tstype 类型名 = 类型定义;``` 二、常见示例 1. 定义简单类型别名```tstype Ag...
TypeScript中的 ?: 是什么意思
在 TypeScript 中,`?:` 是 **可选属性(optional)或可选参数** 的语法,表示 **这个属性或参数可以有,也可以没有**。 一、用在接口中:可选属性```tsinterface User { name: string; age?: number; // age 是可选的...
TypeScript单&是什么
`` 运算符的含义在 TypeScript 中,`` 是**交叉类型**(Intersection Type)运算符。它用于将多个类型合并成一个类型,新类型必须同时满足所有合并类型的属性。简单来说,`A B` 表示一个对象必须同时具有 `A` 和 `B` 的所有属性。举个例子:```typesc...
Dify之i18n
Dify实现了一个完整的国际化解决方案,支持多语言切换,包括服务端渲染(SSR)和客户端渲染(CSR)的完整支持。基于 `i18next` 和 `react-i18next` 构建,提供了类型安全的国际化体验。 项目结构```i18n/├── README.md 本...
JS之reduce函数
小白学习用的 `reduce` 用法总结**,分为:* 一、reduce 是干嘛的* 二、结构怎么写* 三、常见用法场景(多个例子)* 四、和 map/for 的区别* 五、一句话记忆法 一、`reduce` 是干嘛的?`reduce` 是数组的“归并器”,用来把一个数组**变成一个值**(数字、字...
React之noop函数
`noop` 是 lodash 中的一个工具函数,英文全称是 "no operation",意思是“不执行任何操作”的函数。 它的定义非常简单:```tsfunction noop() {}```也就是说,它是一个**空函数**,什么也不做,不返回值,不执行逻辑。 用途:1、**占位函数(默认参数)...