ESLint告诉我,我的index.js文件顶部不需要"use strict"
(它是一个简单的服务器,如https://nodejs.org/en/about/上的6行服务器)。显然,所有节点模块都已处于严格模式。说得通。
但是,运行node index.js
会得到一个"语法错误:[let]不支持在严格模式之外。" 运行"冗余" "use strict"
pragma。
为什么不一致?难道节点默认不知道这个节点模块确实是严格的吗?这可能是由于节点,ESLint或我的IDE的一些简单的错误配置?
答案 0 :(得分:9)
ESLint自行决定其认为有效或无效的警告或错误。您必须将eslint / jslint / jshint所说的所有内容视为其他所有内容的建议。根据某人的意见,他们的建议是最佳的,完全有效。
话虽如此,你确实有一些选项来压制这个特定的警告:
eslint
标志
eslint
以指定此标志--use-strict
node
标记
有关您收到此警告的原因的具体原因与现有的默认节点解释器未完全支持ES6这一事实有关。例如,在节点4中,即使let
是ES6关键字,也不能在严格模式之外使用let
。