Получить список подмножества ключей интерфейса в машинописном языкеJavascript

Форум по Javascript
Anonymous
Получить список подмножества ключей интерфейса в машинописном языке

Сообщение Anonymous »

Я столкнулся с проблемой в своем приложении, из-за которой я аккуратно определил каждый интерфейс для своих моделей во внешнем интерфейсе.
Сейчас я создаю таблицы, в которых определены фильтры + определения столбцов. как подмножество этих интерфейсов.
Представьте себе следующую настройку:

Код: Выделить всё

export interface Project {
id?: string;
name?: string;
color?: string;
notes?: string;
}

type ProjectColumns = Pick
;
type ProjectFilterColumns = Pick;

// What I want to do

ProjectColumns.map(column => i18n.t(`ProjectColumn.${column}`))
ProjectFilterColumns.map(column => i18n.t(`ProjectFilterColumn.${column}`))

Я хочу добиться того, чтобы я мог перебирать ProjectColumns как массив и отображать доступные столбцы пользователю. Пользователь может добавлять или удалять доступные столбцы.
То же самое касается фильтров, где я разрешаю пользователю фильтровать только подмножество свойств, доступных из определенного мной интерфейса.
Проблема, с которой я столкнулся, заключается в том, что только ENUMS можно повторять как массив, но я не хочу снова переопределять свои свойства, поскольку они уже есть в интерфейсе.
/>Я неправильно решаю эту проблему? машинописный текст? Что-нибудь, что мне не хватает?

Подробнее здесь: https://stackoverflow.com/questions/793 ... typescript

Вернуться в «Javascript»