【发布时间】:2023-02-02 23:44:34
【问题描述】:
鉴于以下ROUTES:
const ROUTES = [
{ name: "Login", path: "/login", id: "login" },
{ name: "Registration", path: "/registration", id: "registration" },
{ name: "Settings", path: "/settings", id: "settings" },
] as const;
我如何创建一个类型 (SomeType) 用于:
- 每个
id都被用作键 - 每个
path都被用作一个值 - 给定
ROUTES配置,所有键 (id) 都与其值 (path) 一对一匹配例如:
# correct const correctIdToPaths: SomeType = { login: "/login", registration: "/registration", settings: "/settings", } as const # wrong const duplicatedValues: SomeType = { login: "/registration", # error, id "login" does not match path "/registration" registration: "/registration", settings: "/settings", } as const # wrong const missingKey: SomeType = { login: "/login", registration: "/registration", } as const # error: "settings" is missing
【问题讨论】:
标签: typescript