使用 Infer for 函数只返回特定值?

问题描述 投票:0回答:1

下面是我尝试过的,它工作正常,但我想利用

infer
中的
typescript
来使这个函数返回一个特定值:

function one() {
        return "one";
 }

 
interface IConfig = {
  isDebugMode: () => 'prod' | 'development',
};

function one() : IConfig['isDebugMode'] {
   return process.env.mode;
}
typescript
1个回答
0
投票

是这样的吗

type inference
:

type SettingReturnType<T> = T extends () => infer R ? R : never;


interface Config {
  mode:  () => 'dev' | 'prod';
}


function getApiUrl(): SettingReturnType<Config['mode']> {
  return 'prod';
}
© www.soinside.com 2019 - 2024. All rights reserved.