Как использовать ключ интерфейса с ключом объекта? - PullRequest
0 голосов
/ 26 мая 2020
const EMPLOYEE = {
  KEY: 'key',
  NAME: 'name',
}

export interface Employee {
  [EMPLOYEE.KEY]: string;
  [EMPLOYEE.NAME]: string;
}

И у меня есть ошибка: имя вычисляемого свойства в интерфейсе должно ссылаться на выражение, тип которого является буквальным типом или типом «уникальный символ».

Могу ли я использовать приведенный выше код? Спасибо!

1 Ответ

0 голосов
/ 26 мая 2020

У вас должно получиться sh это, используя enum вместо const:

enum EMPLOYEE {
  KEY = 'key',
  NAME = 'name',
}

export interface Employee {
  [EMPLOYEE.KEY]: string;
  [EMPLOYEE.NAME]: string;
}

Теперь вы можете сделать:

const employee: Employee = { key: 'some key', name: 'some name' };
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...