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

如何阻止TypeScript编译器使用对象属性简写语法?

可行,有两种常见实现方式

1. 修改TypeScript编译目标为ES5

如果项目可以兼容ES5环境,直接在tsconfig.json里把target设为ES5:

{
  "compilerOptions": {
    "target": "ES5"
  }
}

因为ES5不支持对象属性简写语法,TypeScript会自动将{a,b,c}编译为{a:a, b:b, c:c}。

2. 用ESLint强制禁用简写(适用于ES6+目标)

如果需要编译到ES6+版本,可通过ESLint配合规则实现:

  • 确保已配置好TypeScript的ESLint环境(安装好ESLint及相关TS插件)
  • 在.eslintrc里启用object-shorthand规则并设为never:
{
  "rules": {
    "object-shorthand": ["error", "never"]
  }
}

运行eslint --fix命令,ESLint会自动把所有对象属性简写展开为完整形式,之后再执行TS编译即可。

另外也可以用Babel的@babel/plugin-transform-object-shorthand插件配置禁用简写,但ESLint方案在TypeScript项目中更常用。

内容的提问来源于stack exchange,提问作者Gene Sy

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 08:55:23