TypeScript如何为指定取值范围的字符串定义可复用自定义类型
实现方案
完全可以实现,你可以使用TypeScript的类型别名语法完成这个需求。
具体操作步骤
- 使用
type关键字定义字符串字面量联合类型的别名:
// 可加export导出供其他文件使用 export type YogaType = 'hatha' | 'kriya' | 'bhakti' | 'jnana';
- 直接在函数参数中使用定义好的
YogaType即可,和你期望的写法完全一致:
function whichYogaDoYouPractice(type: YogaType) { // 你的函数逻辑 }
补充说明
interface仅支持定义对象、函数类的结构类型,而type类型别名可以为任意类型定义自定义名称,包括基础类型、联合类型、元组类型等,刚好适配你当前的场景。- 后续如果需要新增/修改可选的瑜伽类型,只要修改
YogaType这一处定义即可,所有用到该类型的函数/变量都会自动生效,避免重复编码出错。
内容的提问来源于stack exchange,提问作者Kartik Watwani
相关产品推荐
相关产品推荐

