169 похожих чатов

Подскажите пожалуйста, как можно типизировать объект так, чтобы при его

использовании тайпскрипт точно знал названия ключей?
{ [key: string]: CSSProperties }
Такой вариант работает с динамическими ключами, но при этом не возвращает сами ключи после их создания. Не знаю в какую сторону гуглить и как это называется

3 ответов

7 просмотров

откуда взять названия ключей?

https://wanago.io/2020/02/24/more-advanced-types-with-typescript-generics/

Radik-Khammatov Автор вопроса

В том и заключается вопрос, может ли тайпскрипт сам вернуть конкретные названия ключей, из объекта, так, как если бы объект никаким образом не типизировался. Мне нужно указать тип для вложенных объектов, при этом ключи объектов верхнего уровня могут варьироваться, но если указать для них [key: string], то тайпскрипт не возвращает имена ключей, вот к примеру объект export const mixins: { [key: string]: CSSObject } = { alignFlexColumn: { display: "flex", justifyContent: "center", flexDirection: "column" }, marginAutoHorizontal: { marginLeft: "auto", marginRight: "auto" } } И проблема в том, что при обращении к этому объекту, TS не знает конкретных имён его ключей, например mixins.??????? , и таких объектов довольно много и не хочется вручную прописывать все ключи только для тайпскрипта

Похожие вопросы

Обсуждают сегодня

Такой вопросец - есть функция function MySuperDuperConcat(const a: array of AnsiString): AnsiString; Как мне в её теле сделать вот так? Result:=Concat(a); А не грустный вариан...
notme
15
Есть какой-нибудь для Delphi/FPC T*Compression(Decompression)Stream на базе LZ4/Zstd/любой другой быстрый(и хорошо сжимающий) алгоритм А ещё лучше в pure pascal А ещё лучше од...
notme
48
type TObj = object procedure Init; virtual; end; TObj1 = object(TObj) procedure Init; override; end; procedure TObj1.Init; begin inherited; end; procedur...
Alexander 👋
29
А чем вам питонисты не угодили?😂
.
79
Можно ли загрузить скрипт py в бота чтобы он работал по нему? как это сделать?
huskadam #RCC Фанат? @hitlerpvp
13
Всем здравствуйте! Я хотел узнать сколько стоит средняя месячная зарплата у Electron js разработчиков? Мне очень это важно и нужно, плиз помогите узнать эту инфу! Для Джунио...
U.K.
10
Всем привет, написал код ниже, но он выдает сегфолт, в чем причина? #include <stdio.h> #include <stdlib.h> #include <string.h> struct product { char *name; float price; };...
buzz базз
83
А дин типизация это хорошо или плохо?
Alexey
12
Язык Си можно выучить за день? По книжке ANSI C на 230 страниц
Vincent Vegan
29
Hello. Could you please help me with finding all coordinates within a radius using a spatial index, given that I have a table with coordinates? SET @lng = 37.57925; SET @lat ...
Rinchin G
8
Карта сайта