Однако использование двух общих клавиш, по -видимому, ссылается на правильное подмножество данных, подказки разрешаются Javascript

Форум по Javascript
Anonymous
Однако использование двух общих клавиш, по -видимому, ссылается на правильное подмножество данных, подказки разрешаются

Сообщение Anonymous »

У меня есть структура данных, которая выглядит следующим образом: < /p>

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

import { ParasiteDescription, LookBackDescription } from '@/movies/static';
import type { MovieGenre, MovieDescription } from '@/movies/types';

const movies = {
drama: {
parasite: {
description: ParasiteDescription,
director: 'Bong Joon Ho',
}
},
animation: {
'Look Back': {
description: LookBackDescription,
director: 'Tatsuki Fujimoto'
}
},
comedy: {},
action: {},
} as const satisfies Record<
MovieGenre,
Record<
string,
{
description: MovieDescription;
director: string;
}
>

type StaticMovieData = typeof movies;
Я хочу создать компонент, который позволит пользователю ссылаться на любой «жанр» в этом статическом списке, а затем любой фильм, в котором перечислены в этом жанре. Вот что я попробовал: < /p>

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

interface MovieProps {
genre: T;
title: K;
}

function Movie({
genre,
title,
}: MovieProps) {
const data = movies[genre][title];
const description = data.description;
}
< /code>
data
, по -видимому, показывает правильный тип, показывающий что -то примерно похожее на Staticmoviedata [t] [k] в моей IDE. Тем не менее, описание указано как любой тип , и я не могу понять, почему
Почему это будет? Я бы подумал, что тип соответственно знает, куда он ссылается на этот объект, который является статичным
РЕДАКТИРОВАТЬ: TypeScript Playground Link

Подробнее здесь: https://stackoverflow.com/questions/795 ... -however-s

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