请问一下 typescript 可以做到 限定传入的参数为几个常量中的一个?

请问一下 typescript 可以做到 限定传入的参数为几个常量中的一个?
比如希望传入的参数size是'L','M','S'中的一个

阅读 3.3k
4 个回答

建议用枚举来描述

enum SizeType {
    L = 'Large',
    M = 'Medium',
    S = 'Small'
}

class Demo {

    public getSize(size: SizeType): void {
        console.log(size);
    }

}
Fn(size: 'L' | 'M' | 'S' ){
    console.log(size);
}
新手上路,请多包涵

用联合类型即可:

type size='L'|'M'|'S'
let some:size = 'L'
新手上路,请多包涵

用联合类型,比你采纳的答案要好

推荐问题