Microsoft/TypeScript

Services for non-homomorphic mapped type

Open

#25,607 创建于 2018年7月12日

在 GitHub 查看
 (0 评论) (3 反应) (0 负责人)TypeScript (48,455 star) (6,726 fork)batch import
Domain: LS: Symbol NavigationDomain: Mapped TypesExperience EnhancementHelp WantedSuggestion

描述

TypeScript Version: 3.0.0-dev.20180712

Code

interface I {
 a: number;
 b: number;
}
type J = { [K in "b"]: I[K] };
declare const j: J;
j.b; // Go-to-definition does not work

Expected behavior:

Since the type we're getting is I[K], the mapped property symbol should have a reference back to the corresponding property in I.

Actual behavior:

The mapped type creates an unrelated property symbol and services don't work.

贡献者指南

Services for non-homomorphic mapped type · Microsoft/TypeScript#25607 | Good First Issue