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

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

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

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

 "jshintConfig": { "esnext": true } 

之后,我做了一个重新加载,但警告仍然存在。 我也用Atom( config.cson )修改了我linter-jshint / linter-jshint linter-jsxhintconfiguration:

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

并做了一个重新加载,但也没有帮助它。

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

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

另一种可能性不build议 :你也可以改变Atom中jshint的configuration,并指定你的全局.jshintrc的位置,如果由于某种原因你不想把它放在你的主目录中,

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

运行“哪个jshint”来查找path。 不build议这样做,因为其他.jshinrc文件(在项目.jshinrc )将被忽略:

jshint会在很多地方查找这个configuration,在第一个正面匹配处停下来:

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

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

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

  • 一个名为.jshintrc的文件位于当前用户的“home”目录(定义的位置)

你可以在你的项目文件夹中创build一个.jshintrc ,它将作为json源文件被.jshintrc读取。

要使用esnext选项,

 { "esnext": true } 

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

您可以使用内联configuration在您的文件.js中添加此注释:

/ * jshint esversion:6 * /

http://jshint.com/docs/