node.js - such - Error al integrar ESLint con sublime
sublimelinter not working (6)
Soy nuevo en Node.js, npm y en un entorno sublime y me resulta difícil integrar ESlint con un editor sublime.
Los pasos que seguí son los siguientes:
- ESLint instalado con el comando:
npm install -g eslint
- ESLint instalado con control de paquetes Sublime
Ahora obtengo el siguiente error en el editor Sublime:
module.js:327
throw err;
^
Error: Cannot find module ''eslint''
at Function.Module._resolveFilename (module.js:325:15)
at Function.Module._load (module.js:276:25)
at Module.require (module.js:353:17)
at require (internal/module.js:12:17)
at Object.<anonymous> (C:/Users/MyUser/AppData/Roaming/Sublime Text 3/Packages/ESLint/linter.js:12:17)
at Module._compile (module.js:409:26)
at Object.Module._extensions..js (module.js:416:10)
at Module.load (module.js:343:32)
at Function.Module._load (module.js:300:12)
at Function.Module.runMain (module.js:441:10)
[Finished in 0.2s with exit code 1]
Conseguí que ESlint trabajara para mí en Sublime Text 3 y Win 7 al editar el archivo "Preferencias -> Configuración del paquete -> ESLint -> Configuración - Predeterminado", insertando un tercer valor adicional para el ''Archivo de configuración'' como se puede ver en la captura de pantalla a continuación:
Pasos a seguir para configurar ESlint en Sublime Text 3 con Win 7+
El código del archivo se vería así, si no quieres ver la captura de pantalla:
{ "node_path": "C:/Program Files/nodejs",
"node_modules_path": "C:/Users/<UserName>/AppData/Roaming/npm/node_modules",
"config_file": "C:/Users/<UserName>/AppData/Roaming/npm/node_modules/eslint/node_modules/debug/.eslintrc"}
También puede ver qué formatos de archivo son compatibles con la configuración aquí: https://eslint.org/docs/user-guide/configuring
Encontré ese problema al instalar: npm install -g eslint resolvió ese problema de la siguiente manera:
obtener la versión Eslint conocida de la terminal;
eslint -v
agregó una línea a las dependencias en package.json con esa versión eslint conocida
"dependencies": { ... "eslint": "^4.19.1" }
paso final: en el terminal actualicé todo escrito en este package.json
npm install
Este error es lo que npm lanzaría si no encuentra el módulo eslint
.
Tuve el mismo error y me di cuenta de que era para node_modules_path incorrecto, "$HOME/.npm-global"
y simplemente lo "$HOME/.npm-global/bin"
a "$HOME/.npm-global/bin"
(+ "/bin"
) y funciono para mi
No estoy seguro, si este problema se resolvió mientras tanto, pero hubo una discusión hace algunos años, sobre la instalación de eslint global o localmente por proyecto. Hasta donde entendí la discusión, se recomienda instalar los complementos eslint y eslint localmente para evitar el problema.
Para usar Eslint con Sublime, instalé eslint en mi proyecto con:
npm install eslint --save-dev
Además, instalé SublimeLinter y SublimeLinter-eslint para integrar Eslint en Sublime y dejar que se ejecute cada vez que se guarda un archivo.
Si la respuesta de Jeremy todavía no ayuda, asegúrese de que su carpeta npm esté expuesta en su variable de entorno.
En Windows 7, PATH
incluiría algo como:
C:/Users/<YOUR_USERNAME>/AppData/Roaming/npm;
(Ubicación: Panel de control / Todos los elementos del Panel de control / Sistema / Configuración avanzada del sistema / Avanzadas / Variables de entorno / Variables de usuario ... / PATH )
Vaya a "Preferencias / Configuración de paquete / ESLint / Configuración - Usuario" en la barra de menú e ingrese lo siguiente (las rutas de archivo pueden variar):
{
"node_path": "/usr/local/bin",
"node_modules_path": "/usr/local/lib/node_modules"
}
Aquí está la página de GitHub: https://github.com/polygonplanet/sublime-text-eslint . Desplácese hasta la sección "Configuración de ESLint", todo está documentado allí.