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

如何配置ESLint规则禁止使用next/link的Link组件

配置方法

你已经正确关闭了@next/next/no-html-link-for-pages规则解除原生a标签的使用限制,要实现禁止使用next/link的Link组件的约束,不需要安装额外ESLint插件,直接用ESLint内置规则即可实现。

基础配置(覆盖90%场景)

在ESLint配置文件中添加no-restricted-imports规则,拦截所有从next/link的导入行为:

{
  "rules": {
    "@next/next/no-html-link-for-pages": "off",
    "no-restricted-imports": [
      "error",
      {
        "paths": [
          {
            "name": "next/link",
            "message": "项目内仅允许使用原生<a>标签实现路由跳转,禁止导入next/link的Link组件"
          }
        ]
      }
    ]
  }
}

配置生效后,所有写了import Link from 'next/link'或者import { Link } from 'next/link'的代码,都会直接抛出对应lint错误。

补充配置(拦截动态导入场景)

如果项目中存在动态导入next/link的写法,补充no-restricted-syntax规则拦截即可:

{
  "rules": {
    "no-restricted-syntax": [
      "error",
      {
        "selector": "CallExpression[callee.name='import'][arguments.0.value='next/link']",
        "message": "项目内仅允许使用原生<a>标签实现路由跳转,禁止导入next/link的Link组件"
      }
    ]
  }
}

生效操作

配置修改完成后,重启ESLint服务即可生效:

  • 编辑器端(如VS Code)在命令面板执行ESLint: Restart ESLint Server
  • 终端校验直接重新执行项目的lint命令即可

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.02 08:12:47