使用指南
类型模式
了解 amagi 的类型模式系统
类型模式
amagi 提供了两种类型模式,让你可以在类型安全和灵活性之间做出选择。
类型模式说明
返回 any 类型,容错性更强,适合快速开发或处理未知响应结构。
const = await ...({
: 'BV1xx411c7mD'
})
.data返回严格类型定义,提供完整的类型提示和编译时检查。
const = await ...({
: 'BV1xx411c7mD',
: 'strict'
})
.data使用场景
推荐使用 strict 模式
- 需要完整的 IDE 类型提示
- 进行类型安全的数据处理
- 编写生产级代码
- 需要编译时类型检查
推荐使用 loose 模式
- 快速原型开发
- 处理可能变化的 API 响应
- 需要访问未在类型定义中声明的字段
- 调试和探索 API
类型定义时间:2025-02-02
严格类型基于接口响应定义,随时间推移可能缺少平台新增的字段。如果需要访问新字段,可以使用 loose 模式或进行类型断言。
示例
B站视频信息
const = await ...({
: 'BV1xx411c7mD',
: 'strict'
})
if (.) {
// 完整类型提示
.(..)
.(...name)
.(...view)
}抖音搜索
// 搜索用户
const = await ...({
: '关键词',
: 'user',
: 'strict'
})
// 搜索视频
const = await ...({
: '关键词',
: 'video',
: 'strict'
})类型断言
如果需要在 strict 模式下访问未定义的字段:
const = await ...({
: 'BV1xx411c7mD',
: 'strict'
})
if (.) {
// 使用类型断言访问未定义字段
const = (. as any).newField
}泛型类型
amagi 导出了相关的类型定义,方便你在代码中使用:
import type {
,
,
,
,
} from '@ikenxuan/amagi'