简介:
nanoid 是一个用于生成唯一标识符(Universal unique identifier,简称UUID)的 JavaScript 库。
作用:
生成唯一标识符(UUID)
特点:
小巧
. 116字节 (经过压缩和Brotli处理)。没有依赖。Size Limit 控制大小。安全
. 它使用硬件随机生成器。可在集群中使用。紧凑
. 它使用比 UUID(A-Za-z0-9_-)更大的字母表。因此,ID 大小从36个符号减少到21个符号。可移植
. Nano ID 已被移植到 20种编程语言。
安装:
# 使用npm安装
npm install nanoid
# 使用pnpm安装
pnpm install nanoid
# 使用yarn安装
yarn add nanoid
API:
- nanoid():生成默认大小(21个字符)的唯一ID。
- customAlphabet():允许你自定义字符集以创建个性化的ID。
- urlSafe():返回一个URL安全的版本,即不含有+/=这些可能引起问题的字符。
使用:
// 引入nanoid库
import {nanoid} from 'nanoid'
// 使用nanoid生成id
// 1.不传参数默认21位
const randomId = nanoid(); //=> "V1StGXR8_Z5jdHi6B-myT",
// 2. 传递参数
const randomId = nanoid(10) //=> "IRFa-VaY2b"
// 3.使用自己的字母表和 ID 大小创建的函数
import { customAlphabet } from 'nanoid'
const nanoid = customAlphabet('1234567890abcdef', 10)
model.id = nanoid(5) //=> "f01a2"