javascript - tutorial - Desactivar la regla de eslint para una línea específica
eslint tutorial (11)
Deshabilitar reglas con comentarios en línea
http://eslint.org/docs/user-guide/configuring#disabling-rules-with-inline-comments
/* eslint-disable no-alert, no-console */
/* eslint-disable */
alert(''foo'');
/* eslint-enable */
/* eslint-disable no-alert, no-console */
alert(''foo'');
console.log(''bar'');
/* eslint-enable no-alert, no-console */
/* eslint-disable */
alert(''foo'');
/* eslint-disable no-alert */
alert(''foo'');
alert(''foo''); // eslint-disable-line
// eslint-disable-next-line
alert(''foo'');
alert(''foo''); // eslint-disable-line no-alert
// eslint-disable-next-line no-alert
alert(''foo'');
alert(''foo''); // eslint-disable-line no-alert, quotes, semi
// eslint-disable-next-line no-alert, quotes, semi
alert(''foo'');
foo(); // eslint-disable-line example/rule-name
Para desactivar la regla de linting para una línea particular en JSHint, usamos la siguiente regla:
/* jshint ignore:start*/
$scope.someVar = ConstructorFunction();
/* jshint ignore:end */
He estado tratando de localizar el equivalente de lo anterior para eslint.
Responder
Puede usar un comentario en línea:
// eslint-disable-next-line rule-name
.
Ejemplo
// eslint-disable-next-line no-console
console.log(''eslint will ignore the no-console on this line of code'');
Referencia
ESLint - http://eslint.org/docs/user-guide/configuring#disabling-rules-with-inline-comments
El comentario general de fin de línea,
// eslint-disable-line
, no necesita nada después: no es necesario buscar un código para especificar qué desea que ES Lint ignore.
Si necesita ignorar cualquier sintaxis por algún motivo que no sea una depuración rápida, tiene problemas: ¿por qué no actualizar su configuración de delint?
Disfruto
// eslint-disable-line
para permitirme insertar la
console
para una inspección rápida de un servicio, sin que mi entorno de desarrollo me detenga debido a la violación del protocolo.
(Generalmente prohíbo la
console
y uso una clase de registro, que a veces se basa en la
console
).
O para ignoraciones múltiples en la siguiente línea, encadena las reglas usando comas
/* eslint no-undef: "off"*/
const uploadData = new FormData();
Para deshabilitar todas las reglas en una línea específica:
alert(''foo''); // eslint-disable-line
Para deshabilitar una sola regla para el resto del archivo a continuación:
// eslint-disable-next-line class-methods-use-this, no-unused-vars
Puede agregar los archivos que dan error al archivo .eslintignore en su proyecto. Al igual que para todos los archivos .vue, simplemente agregue /*.vue
Puede usar la sintaxis de una sola línea ahora:
var thing = new Thing(); // eslint-disable-line no-use-before-define
thing.sayHello();
function Thing() {
this.sayHello = function() { console.log("hello"); };
}
O si no desea tener un comentario en la misma línea con el código real, es posible deshabilitar la siguiente línea:
// eslint-disable-next-line no-use-before-define
var thing = new Thing();
Enlace de documentos solicitados: http://eslint.org/docs/user-guide/configuring.html#configuring-rules
Puedes usar lo siguiente
/*eslint-disable */
//suppress all warnings between comments
alert(''foo'');
/*eslint-enable */
Que está ligeramente enterrado en la sección "configuración de reglas" de los docs ;
Para deshabilitar una advertencia para un archivo completo, puede incluir un comentario en la parte superior del archivo, por ejemplo
/*eslint eqeqeq:0*/
Actualizar
ESlint ahora se ha actualizado con una mejor manera de desactivar una sola línea, consulte la excelente respuesta de @goofballLogic.
También puede deshabilitar una regla / reglas específicas (en lugar de todas) al especificarlas en los bloques habilitar (abrir) y deshabilitar (cerrar):
/* eslint-disable no-alert, no-console */
alert(''foo'');
console.log(''bar'');
/* eslint-enable no-alert */
a través del enlace de @ goofballMagic arriba: http://eslint.org/docs/user-guide/configuring.html#configuring-rules
el comentario de una sola línea no funcionó para mí dentro de un componente funcional de reacción tonta, he usado la desactivación de nivel de archivo agregando / * eslint-disable insertEslintErrorDefinitionHere * /
(normalmente si está utilizando el código vs y obtiene un error de eslint, puede hacer clic en la línea que da error y una bombilla aparecerá en el código vs, hacer clic derecho en la bombilla y elegir cualquier opción de desactivación y el código vs lo hará por tú.)