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

GraphQL中是否支持对enum枚举类型进行扩展?

结论

你写的这种extend enum + @external的语法无法直接在Node.js的原生JavaScript/TypeScript环境中运行,这不是JS/TS的标准语法。

分场景说明

场景1:你想要在TypeScript代码中扩展已有枚举

TypeScript原生支持同名枚举的合并特性,不需要特殊的extend关键字,直接再声明一次同名枚举即可扩展:

// 原有枚举定义
enum Content {
  QUESTION,
  SOLUTION
}

// 扩展枚举,注意新增成员的值要和原有成员的值不冲突
enum Content {
  ANSWER = 2
}

// 此时Content枚举已经包含3个成员,可正常在Node环境编译运行
console.log(Content.QUESTION) // 输出 0
console.log(Content.ANSWER) // 输出 2

场景2:你写的是GraphQL SDL的枚举定义

你给出的extend enum + @external写法是GraphQL Schema Definition Language的语法,只能用在GraphQL schema定义文件中,需要搭配GraphQL工具链(如GraphQL Code Generator)生成对应的业务代码后,才能在Node环境中使用,不能直接作为JS/TS代码执行。


内容的提问来源于stack exchange,提问作者Aishwer Sharma

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 18:30:02