Write the @DynamoProperty decorator on top of the property definition. This property will be added to DynamoItem. And @DynamoEntity is can convert to AttributeMap.
@DynamoProperty
@DynamoEntity
AttributeMap
@DynamoEntity(...) class Cat { @DynamoProperty({ keyType: KeyType.hash }) id!: number; @DynamoProperty({ keyType: KeyType.sort }) age!: number; @DynamoProperty({ keyType: KeyType.attr }) name!: string; constructor(id: number, age: number, name: string) { this.id = id; this.age = age; this.name = name; } }
For example,
const badCat: Cat = new Cat(0, 1, "garfield"); const dynamo: AttributeMap = Mapper.formation(badCat, Cat);
It will formationed as,
{ "id": { "N": "0" }, "age": { "N": "1" }, "name": { "S": "garfield" } }
// Property Type of DynamoDB. // Specially, HASH and RANGE are KeyType. export enum KeyType { hash = "HASH", sort = "RANGE", attr = "ATTR" }
Last updated 5 years ago
Was this helpful?