打字稿:范围多个返回类型

时间:2021-05-08 17:47:26

标签: typescript generics types polymorphism

我有一个返回 HandleAnswer 的函数。

 export type HandleAnswer =
        | {
            mint_nft: {
                token_id: string;
            };
        }
        | {
            batch_mint_nft: {
                token_ids: string[];
            };
        }
        | {
            set_public_metadata: {
                status: ResponseStatus;
            };
        }

我有一个类似的参数类型。如果我开始添加参数,它将“作用域”到正确的类型。因此,如果我输入 functionA({mint_nft:{,它会自动完成为 string 类型的 token_id。 如果我对结果做同样的事情,它似乎只会选择第一种类型:

const test:HandleAnswer = functionA(...)
test.batch_mint_nft <-- this will rise a compiler warning that HandleAnswer does not contain batch_mint_nft, only mint_nft.

这里有我遗漏的东西吗?

0 个答案:

没有答案
相关问题