如何在 Atom 中设置 jshint/jsxhint "esnext" 选项



我正在使用Atom的linterreactlinter-jshint/linter-jsxhint。在我的 JSX 文件中,我不断收到警告

警告:"导入"仅在 ES6 中可用(使用 esnext 选项(。(W119(

这很简单。我做了一些搜索,发现这可以设置在package.jsonjshintConfig选项下(使用 NPM 时(。我的项目使用 NPM,我有一个package.json.我补充说:

"jshintConfig": {
  "esnext": true
}

之后,我重新加载了,但警告仍然存在。我还修改了我在 Atom (config.cson( 中的 linter-jshint/linter-jsxhint 配置:

"linter-jshint":
  harmony: true
  esnext: true
"linter-jsxhint":
  harmony: true
  esnext: true

并进行了重新加载,但这也没有帮助。

那么:当使用linter-jshint/linter-jsxhint作为Atom包时,如何设置esnext选项?

您可以在

项目文件夹中创建一个.jshintrc,它将被 linter 读取为 json 源文件。

要使用 esnext 选项,

{
    "esnext": true
}

您可能需要重新打开 JS 文件才能看到新的更改。

第一种可能性,推荐:您可以在主目录中创建一个.jshintrc,如果项目目录中没有,jshint 将读取它。之后,您可能需要重新启动 Atom。

另一种不推荐的可能性:您也可以更改 Atom 中 jshint 的配置并指定全局.jshintrc的位置,如果由于某种原因您不想将其放在带有标志的主目录中--config

'linter-jshint':
  'jshintExecutablePath': /path/to/jshint --config /path/to/.jshinrc

运行"哪个jshint"以查找路径。不建议这样做,因为所有其他.jshinrc文件(在项目中等(将被忽略:

JSINT 将在多个位置查找此配置,并在第一个正匹配处停止:

  • 使用 --config 标志指定的位置

  • 位于当前目录
  • 或当前目录的任何父目录中的名为 package.json 的文件(配置应声明为该文件的 JSON 值的 jshintConfig 属性(

  • 名为 .jshintrc 的文件位于当前目录或当前目录的任何父目录中

  • 名为 .jshintrc 的文件位于当前用户的"主"目录(已定义(中

您可以使用

内联配置在文件中添加此注释.js:

/* jshint esversion: 6 */

http://jshint.com/docs/

最新更新