TypeError: context.getScope 不是一个函数
症状
当将 ESLint v9.0.0 或更高版本与插件一起使用时,您可能会看到以下错误之一
TypeError: context.getScope is not a function
TypeError: context.getAncestors is not a function
TypeError: context.markVariableAsUsed is not a function
TypeError: context.getDeclaredVariables is not a function
原因
ESLint v9.0.0 引入了 规则 API 的更改,插件规则使用该 API,其中包括将一些方法从 context
对象移动到 sourceCode
对象。如果您看到这些错误之一,则意味着该插件尚未更新以使用新的规则 API。
解决方案
此问题的常见解决方案包括
- 将插件升级到最新版本。
- 使用兼容性实用程序在您的配置文件中修补插件。
资源
有关更多信息,请参阅