Что такое TableProps для DynamodB при использовании aws CDK - PullRequest
0 голосов
/ 20 марта 2020

Я использую aws CDK для DynamodB, хочу добавить таблицу DynamodB, уже получил этот код, что такое TableProps для DynamodB? Я думал, что это имя таблицы со строковым типом, но кажется неправильным, кто-нибудь может мне помочь с этим?

https://docs.aws.amazon.com/cdk/api/latest/typescript/api/aws-dynamodb/tableprops.html#aws_dynamodb_TableProps_tableName

import core = require('@aws-cdk/core');
import dynamodb = require('@aws-cdk/aws-dynamodb')

export class HelloCdkStack extends core.Stack {
  constructor(scope: core.App, id: string, props?: core.StackProps) {
    super(scope, id, props);

    new dynamodb.Table(this, 'MyFirstTable', {
        tableName: 'myTable'
      });
  }
}

Это ошибка

lib/dynamodb.ts:8:46 - error TS2345: Argument of type '{ tableName: string; }' is not assignable to parameter of type 'TableProps'.
  Property 'partitionKey' is missing in type '{ tableName: string; }' but required in type 'TableProps'.

 8     new dynamodb.Table(this, 'MyFirstTable', {
                                                ~
 9         tableName: 'myTable'
   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
10       });
   ~~~~~~~

  node_modules/@aws-cdk/aws-dynamodb/lib/table.d.ts:19:14
    19     readonly partitionKey: Attribute;
                    ~~~~~~~~~~~~
    'partitionKey' is declared here.

1 Ответ

0 голосов
/ 20 марта 2020

Попробуйте

import { AttributeType } from '@aws-cdk/aws-dynamodb';

    new dynamodb.Table(this, 'MyFirstTable', {
      tableName: "myTable",
      partitionKey: {
            name: "MyPartitionkey,
            type: AttributeType.STRING
          }
    });
...