用户12771345
在TypeScript里用satisfies和as const处理配置对象时,怎样避免类型拓宽和运行时错误
原创
关注作者
腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
圈层
工具
MCP广场
文章/答案/技术大牛
搜索
搜索
关闭
发布
用户12771345
社区首页
>
专栏
>
在TypeScript里用satisfies和as const处理配置对象时,怎样避免类型拓宽和运行时错误
在TypeScript里用satisfies和as const处理配置对象时,怎样避免类型拓宽和运行时错误
用户12771345
关注
发布于 2026-09-18 12:54:40
发布于 2026-09-18 12:54:40
91
0
举报
概述
写TS项目时经常遇到一种情况:定义一个配置对象,既希望字面量类型被保留,又希望整体结构受接口约束。比如路由表、主题变量、状态映射。直接写 const config = { ... } 会导致属性被拓宽成 string 或 number,传给只接受字面量联合类型的函数会报错。用 : SomeType 注解又会把字面量信息擦掉,拿不到精确的 key。as const 虽然能冻结字面量,但会和接口约束冲
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系
cloudcommunity@tencent.com
删除。
typescript
问题归档
专栏文章
快讯文章归档
关键词归档
开发者手册归档
开发者手册 Section 归档