ESLint 报错:'Promise' is not defined 解决方案

阅读时长 3 分钟读完

ESLint 报错:'Promise' is not defined 解决方案

在前端开发过程中,我们常常会使用到 Promise,而 ESLint 则是一款常用的 JavaScript 代码静态检查工具。但是,当你在使用 Promise 的时候可能会遇到 ESLint 报错:'Promise' is not defined 的情况。

这是因为 ESLint 默认情况下不认识 Promise,需要你在配置文件中设置 parserOptions 选项来指定 ECMAScript 版本。下面介绍两种处理方式:

1. 升级 ECMAScript 版本

使用 Promise 需要将 ECMAScript 版本升级到 ES6 或更高版本,这需要在 ESLint 的配置文件中设置 parserOptions 选项。例如,你可以在 .eslintrc.js 中添加以下代码:

设置完 parserOptions 后,再运行 ESLint,就不会出现 'Promise' is not defined 的报错了。

2. 集成 babel-eslint

如果你的项目还使用了 Babel 转换 ES6 代码,那么你可以使用 babel-eslint 来解决这个问题。babel-eslint 是一个将 Babel 抽象语法树和 ESLint 集成起来的工具,可以支持大部分的 Babel 语法特性,例如 arrow function、const、let、import 等。

首先,你需要安装 babel-eslint:

接着,在配置文件中指定解析器为 babel-eslint,例如:

然后,在安装好依赖后,你就可以使用 Promise 了,例如:

通过以上两种方式,你可以成功解决 ESLint 报错:'Promise' is not defined 的问题,在开发过程中更加稳定和高效。

总结:在使用 Promise 时,可以通过升级 ECMAScript 版本或者集成 babel-eslint 解决 ESLint 报错:'Promise' is not defined 的问题。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/654ee1207d4982a6eb7f3340

纠错
反馈