javascript - visual - ¿Por qué JSHint lanza una advertencia si estoy usando const?
jshint vs eslint (12)
Este es el error que obtengo cuando uso const:
<error line="2" column="1" severity="warning" message="'const' is available in ES6 (use esnext option) or Mozilla JS extensions (use moz)." source="jshint.W104" />
Mi código se ve así:
const Suites = {
Spade: 1,
Heart: 2,
Diamond: 3,
Club: 4
};
El código funciona bien, solo JSHint me advierte cada vez.
Al confiar en las características de ECMAScript 6 como
const
, debe configurar esta opción para que JSHint no genere advertencias innecesarias.
/ * jshint esnext: true * /
(
Editar 2015.12.29
: sintaxis actualizada para reflejar
los comentarios de @ Olga
)
/*jshint esversion: 6 */
const Suites = {
Spade: 1,
Heart: 2,
Diamond: 3,
Club: 4
};
Esta opción, como su nombre indica, le dice a JSHint que su código usa la sintaxis específica de ECMAScript 6. http://jshint.com/docs/options/#esversion
Editar 2017.06.11 : se agregó otra opción basada en esta respuesta .
Si bien la configuración en línea funciona bien para un archivo individual, también puede habilitar esta configuración para todo el proyecto creando un archivo
.jshintrc
en la raíz de su proyecto y agregándolo allí.
{
"esversion": 6
}
Cree un archivo llamado, diga jshint_opts con este contenido: {"esversion": 6}
Luego invoque jshint con algo como esta línea de comando:
jshint --config jshint_opts lib / *. js
Cuando comience a usar ECMAScript 6, este error lo arrojará su IDE.
Hay dos opciones disponibles:
si solo tiene un archivo y desea usar el es6, simplemente agregue la línea siguiente en la parte superior del archivo.
/*jshint esversion: 6 */
O si tiene un número de archivos js o está utilizando algún marco (como nodejs express) puede crear un nuevo archivo llamado
.jshintrc
en su directorio raíz y agregar el código a continuación en el archivo:
{
"esversion": 6
}
Si desea utilizar la versión es6 en adelante para cada proyecto, puede configurar su IDE.
En su package.json puede decirle a Jshint que use es6 como este
"jshintConfig":{ "esversion": 6 }
Puede agregar un archivo llamado .jshintrc en la raíz de su aplicación con el siguiente contenido para aplicar esta configuración a toda la solución :
{
"esversion": 6
}
La respuesta de James
sugiere que puede agregar un comentario
/*jshint esversion: 6 */
para
cada
archivo, pero es más trabajo de lo necesario si necesita controlar muchos archivos.
Recibí esta misma advertencia cuando uso una declaración de exportación. Estoy usando VS Code y utilicé un enfoque similar a la solución de Wenlong Jiang.
- Ajustes de usuario
- Configuración JSHint
-
"jshint.options": {}
(Editar) -
Use comillas dobles cuando especifique
"esversion"
O copie este fragmento en la Configuración de usuario:
"jshint.options": { "esversion": 6, }
.jshintrc
es necesario crear un archivo
.jshintrc
si desea configurar los ajustes globales de jshint para su editor
Si está usando VSCode:
1)
-
Vaya a
preferencias
->
configuración
(
cmd + ,
) -
Escriba
jshint.options
en la barra de búsqueda - Desplázate sobre él y haz clic en el ícono de lápiz
- Ahora se adjunta en el lado derecho.
-
Agregue
"esversion": 6
al objeto de opciones.
2)
O simplemente agregue esto a su configuración de usuario:
"jshint.options": {
"esversion": 6
}
[ACTUALIZAR] nueva configuración de vscode
-
Vaya a
preferencias
->
configuración
(
cmd + ,
) -
escriba
jshint
en la búsqueda
-
continúa con el paso
2.
Si está utilizando Webstorm y no tiene su propio archivo de configuración, habilite
EcmaScript.next
en Opciones relajantes en
Configuraciones | Idiomas y marcos | JavaScript | Herramientas de calidad de código | JSHint
Ver esta pregunta How-do-I-resolve-these-JSHint-ES6-errors
Si está utilizando la configuración de Grunt, debe realizar los siguientes pasos
Mensaje de advertencia en Jshint:
Solución:
- Establezca las opciones de jshint y asigne el archivo .jshintrc.js
- Cree el archivo .jshintrc.js en ese archivo, agregue el siguiente código
{ "esversion": 6 }
Después de configurar esto, Ejecutar nuevamente Saltará la advertencia,
Si usa Sublime Text 3:
- Vaya a Preferencias -> Configuración
- En Preferencias.sublime-settings: el usuario agrega "esversion": 6