跳到主要内容

index

# 模型定义

模型定义是 RxDB 的核心概念,它定义了数据的结构和关系。RxDB 使用装饰器和类型定义来创建强类型的数据模型,遵循第三范式(3NF)设计原则,确保数据结构清晰、一致且易于扩展。

## 基本模型定义

使用 `@Entity()` 装饰器来定义一个实体模型:

```typescript
import { Entity, EntityBase, PropertyType } from '@aiao/rxdb';

@Entity({
name: 'Todo',
properties: [
{ name: 'title', type: PropertyType.string, required: true },
{ name: 'completed', type: PropertyType.boolean, default: false },
{ name: 'dueDate', type: PropertyType.date }
]
})
export class Todo extends EntityBase {}

模型特性

  • 强类型:利用 TypeScript 类型系统提供完整的类型安全
  • 面向对象:模型更直观,高效
  • 自动验证:基于属性定义自动验证数据
  • 关系支持:支持一对一、一对多、多对多等复杂关系
  • 代码生成:可通过 rxdb-client-generator 自动生成客户端代码

相关主题