node.js - plugin - node js in intellij idea
¿Cómo configurar el proyecto WebStorm/PhpStorm para que JS Code Intelligence funcione bien en los proyectos Node.js? (4)
Desafortunadamente no hay una manera fácil "correcta". Puede excluir todos los directorios de node_modules que se encuentran dentro del directorio de node_modules de nivel superior. Hará la terminación mejor, pero no ideal.
Más discusión está aquí: http://devnet.jetbrains.net/message/5468926 .
En WebStorm / PhpStorm / IDEA, hay una gran cantidad de funciones de inteligencia de código para JavaScript incorporado. Sin embargo, al desarrollar una aplicación Node.js, incluido todo desde node_modules
complica las cosas con cosas como "Navegar a archivo" (no quiero que el IDE me ofrezca decenas de package.json
s de la carpeta node_modules
, por ejemplo). Pero excluir la carpeta node_modules
tiene sus propios problemas: no hay finalización de código, etc.
Entonces, ¿cuál es la manera "correcta" de abordar esto en WebStorm? ¿Debo incluir solo algunos de los archivos de node_modules
? ¿O excluir todo de allí y usar de alguna manera el concepto de proyecto o bibliotecas globales?
Gracias.
Esto se ha solucionado en WebStorm 7, consulte http://youtrack.jetbrains.com/issue/WEB-1927 .
Para hacer esto en la interfaz de usuario (probado desde PyCharm 2.7.3, el resultado se muestra en PhpStorm 6.0.3):
Añadir bibliotecas de JavaScript
Archivo → Configuración
(Configuración del proyecto) → JavaScript → Bibliotecas
[Añadir ...] →
Nombre : node_modules
Visibilidad : [x] Proyecto actual
[Adjuntar...]
{seleccione la carpeta node_modules del proyecto}
{repetir para bower }
Excluir carpeta del proyecto
(Configuración del proyecto) → Estructura del proyecto
Haga clic derecho en la carpeta → [Excluido]
Para hacer esto desde el archivo .iml del proyecto:
Cambiando el .iml
del proyecto a lo siguiente:
<?xml version="1.0" encoding="UTF-8"?>
<module type="WEB_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$">
<excludeFolder url="file://$MODULE_DIR$/bower_components" />
<excludeFolder url="file://$MODULE_DIR$/node_modules" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" name="node_modules" level="application" />
<orderEntry type="library" name="bower_components" level="application" />
</component>
</module>
Provocó que el editor excluya node_modules y bower_components, pero que estén disponibles para completar y buscar en la biblioteca.
Probado en PyCharm, IntelliJ y WebStorm.
Puede descargar un complemento para la integración de Node.js: http://plugins.intellij.net/plugin/?webide&pluginId=6098