Estoy asignando una propiedad al objeto de ventana global, pero cuando ejecuto eslint, obtengo esto:
"ventana" no está definida
Veo esto aquí en los documentos de eslint :
A continuación, se define la ventana como una variable global para el código que no debe activar la regla que se está probando:
valid: [
{
code: "window.alert()",
globals: [ "window" ]
}
]
Intenté agregar algo como esto al archivo package.json para que eslint allow "window" como una variable global, pero debo estar haciendo algo mal. Según los documentos, parece que podría necesitar hacer algo como esto en un archivo separado, pero ¿hay alguna manera de definir algunas variables globales permitidas directamente en el archivo package.json?
global
, debe asegurarse de que"node": true
esté configurado en su"env"
configuración.Respuestas:
Hay un incorporado
environment: browser
que incluyewindow
.Ejemplo
.eslintrc.json
:Más información: http://eslint.org/docs/user-guide/configuring.html#specifying-environments
También vea la
package.json
respuesta de chevin99 a continuación.fuente
.eslintrc
nopackage.json
/* eslint-env browser */
Lo encontré en esta página: http://eslint.org/docs/user-guide/configuring
En package.json, esto funciona:
fuente
Agregar
.eslintrc
en la raíz del proyecto.fuente
.eslintrc.json
puede simplemente ser.eslintrc
Su .eslintrc.json debe contener el texto a continuación.
De esta manera, ESLint conoce sus variables globales.
fuente
Soy consciente de que no está pidiendo la versión en línea . Pero como esta pregunta tiene casi 100k visitas y me caí aquí buscando eso, la dejaré aquí para el próximo compañero codificador:
Asegúrese de que ESLint no se ejecute con la
--no-inline-config
bandera (si esto no le suena familiar, es probable que esté listo). Luego, escriba esto en su archivo de código (para mayor claridad y convención, está escrito en la parte superior del archivo pero funcionará en cualquier lugar):Esto le dice a ESLint que su entorno de trabajo es un navegador, por lo que ahora sabe qué cosas están disponibles en un navegador y se adapta en consecuencia.
Hay muchos entornos y puede declarar más de uno al mismo tiempo, por ejemplo, en línea:
Si casi siempre usa entornos particulares, es mejor configurarlo en el archivo de configuración de su ESLint y olvidarse de él.
De sus documentos :
Además de los entornos, puede hacer que ignore todo lo que desee. Si te advierte sobre el uso
console.log()
pero no quieres que te lo avisen, solo en línea:Puede ver la lista de todas las reglas , incluidas las reglas recomendadas para las mejores prácticas de codificación .
fuente
Si está utilizando Angular , puede hacerlo con:
fuente