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

NextJS配合TypeScript使用时如何像CRA一样在终端显示未使用变量警告?

解决方案:Next.js + TypeScript 项目实现开发阶段未使用变量终端警告

核心实现逻辑

通过开启TypeScript语法校验、配置Next.js开发环境ESLint校验规则,即可实现和CRA一致的终端实时提示未使用变量的效果,无需等到构建阶段才暴露问题。

操作步骤

步骤1:修改tsconfig.json开启未使用变量校验

在项目根目录的tsconfig.json中新增如下配置:

{
  "compilerOptions": {
    // 保留原有其他配置不变
    "noUnusedLocals": true, // 开启未使用局部变量校验
    "noUnusedParameters": true, // 开启未使用函数参数校验
  }
}

步骤2:配置next.config.js开启开发环境校验

在项目根目录的next.config.js中新增ESLint校验配置,让开发服务(next dev)运行时实时触发校验:

/** @type {import('next').NextConfig} */
const nextConfig = {
  // 保留原有其他配置不变
  eslint: {
    dirs: ['pages', 'components', 'lib', 'src'], // 按需填写需要校验的目录
  },
}

module.exports = nextConfig

步骤3:调整警告级别(可选)

如果希望未使用变量仅输出警告、不阻断开发流程,可在项目根目录的.eslintrc.json中调整规则级别:

{
  "rules": {
    "@typescript-eslint/no-unused-vars": ["warn"]
  }
}

如果需要开发阶段直接报错提示,将上方的warn修改为error即可。

步骤4:配置提交前置校验(可选,彻底避免漏改)

如果要从流程上杜绝未使用变量被提交到代码库,可通过husky + lint-staged配置提交前自动校验:

  • 安装依赖:yarn add husky lint-staged -D
  • 启用husky:npx husky install
  • 新增pre-commit钩子:npx husky add .husky/pre-commit "npx lint-staged"
  • 项目根目录新增.lintstagedrc.json配置文件:
{
  "**/*.{ts,tsx}": ["eslint --fix", "tsc --noEmit"]
}

配置完成后每次提交代码会自动校验改动文件,存在未使用变量时会直接阻断提交,无需手动执行构建排查。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 19:45:03