You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在TypeScript中获取Angular FormBuilder泛型函数的返回类型?

解决Angular类型化表单中获取FormBuilder.group返回类型的问题

你可以通过定义泛型辅助类型来实现需求,TypeScript不允许直接在ReturnType中给泛型函数传递泛型参数,但我们可以先把FormBuilder.group方法绑定到指定泛型参数上,再提取它的返回类型:

// 定义辅助类型,用于获取FormBuilder.group<T>的返回类型
type FormGroupFromBuilder<T> = ReturnType<typeof FormBuilder.prototype.group<T>>;

// 示例用法
interface LoginForm {
  username: string;
  password: string;
}

// 此时LoginFormGroup的类型等价于FormGroup<LoginForm>
type LoginFormGroup = FormGroupFromBuilder<LoginForm>;

其实更直接的是,Angular中FormBuilder.group<T>()的返回类型本身就是FormGroup<T>,如果你的需求只是得到对应的表单组类型,直接使用FormGroup<T>也完全可行。但如果是需要通过函数返回类型推导的场景,上面的辅助类型写法就可以解决问题。

内容的提问来源于stack exchange,提问作者Eduardo Fernandes

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 22:13:10