Ошибка при использовании TypeScript DynamodB-Data-Mapper с или без аннотаций - PullRequest
0 голосов
/ 27 ноября 2018

Я запустил новый проект TypeScript / Node, который будет иметь бэкэнд DynamoDB, и я пытаюсь использовать преобразователь данных DynamoDB, но я получаю следующую ошибку:

Предоставленный элемент сделалне придерживаться протокола DynamoDbDocument.У символа DynamoDbSchema не найдено ни одного свойства объекта.

Я пытался использовать аннотации и метод задания схемы непосредственно в прототипе класса, но оба они приводят к одному и тому жеошибка, которая заставляет меня полагать, что моя проблема с какой-то конфигурацией.Вот мой tsconfig.json:

{
  "compilerOptions": {
    "module": "commonjs",
    "target": "es2017",
    "sourceMap": true,
    "moduleResolution": "node",
    "outDir": "dist",
    "rootDir": "./",
    "types": ["reflect-metadata"],
    "lib": ["es2017", "esnext.asynciterable"],
    "experimentalDecorators": true,
    "emitDecoratorMetadata": true
  },
  "include": [
    "src/**/*"
  ]
}

Вот модель:

import Employee from "./Employee";
import {Location} from "./Location";
import {attribute, hashKey, table} from "@aws/dynamodb-data-mapper-annotations";

@table('mentors')
export default class Mentor implements Employee {
    @attribute()
    name: string;

    @hashKey()
    username: string;

    @attribute()
    email: string;

    @attribute()
    title: string;

    @attribute()
    team: string;

    @attribute()
    location: Location;

    @attribute({memberType: 'String'})
    areasOfInterest: Set<string>;

    @attribute({memberType: 'String'})
    willMentorLocations: Set<string>;

    @attribute({memberType: 'String'})
    mentees: Set<string>;
}

А вот соответствующие версии зависимостей:

"@aws/dynamodb-data-mapper": "^0.7.3",
"@aws/dynamodb-data-mapper-annotations": "^0.7.3",
"reflect-metadata": "^0.1.12",
"typescript": "^3.1.6"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...