# 5 Node
Podemos entrar a la web oficial de Node (opens new window)
Podemos entrar a la web oficial de NPM (opens new window)
# ¿Qué es Node?
Aviso
- Podemos entrar a la documentación creada por Bluuweb sobre Node (opens new window) creada en VuePress
# Enlaces utiles
En esta seccion pondremos enlaces utiles:
- Enlaces Utiles de Angular ----> Podemos ver como se instala Node antes de instalar Angular
- 220. Como usar un cliente RESTful (opens new window) ----> Master en JavaScript: Aprender JS, jQuery, Angular, NodeJS
- 69. Trabajando con un cliente RESTful (opens new window) ----> Master en Frameworks JavaScript: Aprende Angular, React, Vue
- 133. El cliente REST (opens new window) ----> Master en webs Full Stack: Angular, Node, Laravel, Symfony +
# Apuntes varios
En esta seccion pondremos apuntes varios:
# Instalamos Node
Instalamos Node (opens new window) desde su web
También podemos ver las Versiones de Node (opens new window)
node -v
npm -v
# Instalamos Node en Laragon
Instalamos Node (opens new window) desde su web
Notas
- Los apuntes anteriores hacen referencia a instalar Node con su ejecutable msi desde su web
- Los apuntes de esta sección hacen referencia a descargar la versión en formato zip de Node desde su web, para instalarlo como binario en Laragon, para esto debemos:
- Ir a la siguiente ruta:
Actualizar la versión de Node.js en Laragon (opens new window) - Una vez realizada la instalación de Node.js en Laragon agregar la ruta al PATH de Windows.
- Para agregar Node.js al PATH de Windows, siga estos pasos:
- Abra el menú Inicio y busque
Variables de entornoy seleccioneEditar las variables de entorno del sistema. - En la pestaña
Opciones avanzadas, haga clic enVariables de entorno. - En la sección
Variables del sistema, busque la variablePathy haga clic enEditar. - Haga clic en
Nuevoy agregue la ruta de instalación de Node.js (por ejemplo,C:\Program Files\nodejs). ---- En nuestro caso seriaD:\PORTABLES\laragon\bin\nodejs\node-v12.11.1-win-x64. - Haga clic en
Aceptarpara guardar los cambios.
- Abra el menú Inicio y busque
# Modulos instalados
# Para poder ver los modulos instalados (Esto se aplica a las secciones Node, Angular y React)
npm list # Localmente en un repositorio
npm list -g # Globalmente
# Ubicación de los modulos instalados
# Para poder ver la ubicacion de los modulos instalados (Esto se aplica a las secciones Node, Angular y React)
# Los paquetes de Node se instalan mediante npm, el gestor de paquetes de Node.
# Los paquetes instalados globalmente, en sistemas Unix o Linux, se instalan en la carpeta /usr/local/lib/node_modules/, mientras que en Windows se instalan en C:\Users\<user>\AppData\Roaming\npm\node_modules.
# Los paquetes instalados localmente, se instalan en la carpeta node_modules en la raíz del proyecto.
npm root # Localmente en un repositorio
npm root -g # Globalmente
# Ubicacion de los archivos ejecutables
# Verificar ubicacion de los archivos ejecutables en las variables de entorno PATH del sistema
where node # Comando Windows, obtiene todas las rutas disponibles del PATH, ordenadas
which node # Comando Linux, obtiene solo la primera ruta del PATH que encuentra, comentar que en el PATH la primera ruta disponible es la que se ejecuta
where npm
which npm
where ng
which ng
# Otros
where php
which php
where laravel
which laravel
where python
which python
where vuepress
which vuepress
where create-react-app
which create-react-app
where mongod
which mongod
# 3-api-rest-node-two (master-fullstack)
Notas de la instalación
- Cuando cree este proyecto lo hice con Node 18.14.0 instala NPM 9.3.1
- Mongoose (opens new window)
- Como diseñar una base de datos con DIA - Victor Robles (opens new window)
- ¿Qué es REST? Conoce su potencia (opens new window)
- Diferencia entre let, var, const (opens new window)
npm init -y # Crear package.json de forma predeterminada
npm init # Crear package.json y nos permite personalizarlo en consola
node index o node index.js # Estos comandos se utilizan para ejecutar el archivo index.js (o cualquier otro archivo de JavaScript específico) en Node.js. Este comando es útil cuando se desea ejecutar un archivo JavaScript que no es una aplicación completa, sino que puede ser una biblioteca o un módulo específico.
npm start # De este modo también levantamos un proyecto en React. Este comando se utiliza para iniciar la aplicación principal de tu proyecto, definida en el archivo package.json. Este comando es útil para automatizar la tarea de iniciar la aplicación y manejar las variables de entorno necesarias.
npm run start # Este comando también inicia la aplicación principal de tu proyecto, pero permite ejecutar cualquier otro script personalizado definido en el archivo package.json. Por ejemplo, si tienes un script personalizado llamado start-dev, puedes ejecutarlo con el comando npm run start-dev.
# Dependencias
Las dependencias siempre estan instaladas en packgage.json del proyecto
npm i # Puedes recuperar node_modules y package-lock.json con el archivo package.json
npm install # Puedes recuperar node_modules y package-lock.json con el archivo package.json
npm update # Actualizar las dependencias que ya tenga, pero ademas instalara las dependencias que faltan
npm update -g # Actualiza todos las dependencias globales
npm install --save-dev nodemon # Instalamos nodemon como dependencia de desarrollo, --save para indicarle que sea dependencia del proyecto y -dev para indicarle que sea dependencia de desarrollo
npm i bcrypt # Instalamos bcrypt ----> Para hashear contraseñar
npm i body-parser # Instalamos body-parser ----> Se encarga de recibir una peticion HTTP normal, se encarga tomar toda esa información, la informacion del body y convertirla a JSON
npm i connect-multiparty # Instalamos connect-multiparty ----> Permite subir archivos al backend
npm i express # Instalamos express ----> Framework que funciona sobre NodeJS, que se encarga de todas las peticiones HTTP, framework backend que se encarga de hacerlo todo, si queremos hacer una API o una aplicacion completa con Node, necesitamos Express
npm i jwt-simple # Instalamos jwt-simple ----> Nos permite generar Token y decodificar Token
npm i moment # Instalamos moment ----> Procesar fechas, limpiarlas, darle un formato concreto, etc
npm i mongoose # Instalamos mongoose ----> Es un ORM, una herramienta de modelado de objetos, diseñada para trabajar con MongoDB
npm i mongoose-paginate-v2 # Instalamos mongoose-paginate-v2 ----> Paginacion con mongoose
npm i validator # Instalamos validator ----> Validar datos, validar email, string, numero, cosas asi
# 7-backend-nodejs-two (master-javascript)
Notas de la instalación
- Cuando cree este proyecto lo hice con Node 18.14.0 instala NPM 9.3.1
npm init -y # Crear package.json de forma predeterminada
npm init # Crear package.json y nos permite personalizarlo en consola
node index o node index.js # Estos comandos se utilizan para ejecutar el archivo index.js (o cualquier otro archivo de JavaScript específico) en Node.js. Este comando es útil cuando se desea ejecutar un archivo JavaScript que no es una aplicación completa, sino que puede ser una biblioteca o un módulo específico.
npm start # De este modo también levantamos un proyecto en React. Este comando se utiliza para iniciar la aplicación principal de tu proyecto, definida en el archivo package.json. Este comando es útil para automatizar la tarea de iniciar la aplicación y manejar las variables de entorno necesarias.
npm run start # Este comando también inicia la aplicación principal de tu proyecto, pero permite ejecutar cualquier otro script personalizado definido en el archivo package.json. Por ejemplo, si tienes un script personalizado llamado start-dev, puedes ejecutarlo con el comando npm run start-dev.
# Dependencias
Las dependencias siempre estan instaladas en packgage.json del proyecto
npm i # Puedes recuperar node_modules y package-lock.json con el archivo package.json
npm install # Puedes recuperar node_modules y package-lock.json con el archivo package.json
npm update # Actualizar las dependencias que ya tenga, pero ademas instalara las dependencias que faltan
npm update -g # Actualiza todos las dependencias globales
npm install --save-dev nodemon # Instalamos nodemon como dependencia de desarrollo, --save para indicarle que sea dependencia del proyecto y -dev para indicarle que sea dependencia de desarrollo
npm i body-parser # Instalamos body-parser ----> Se encarga de recibir una peticion HTTP normal, se encarga tomar toda esa información, la informacion del body y convertirla a JSON
npm i connect-multiparty # Instalamos connect-multiparty ----> Permite subir archivos al backend
npm i express # Instalamos express ----> Framework que funciona sobre NodeJS, que se encarga de todas las peticiones HTTP, framework backend que se encarga de hacerlo todo, si queremos hacer una API o una aplicacion completa con Node, necesitamos Express
npm i mongoose # Instalamos mongoose ----> Es un ORM, una herramienta de modelado de objetos, diseñada para trabajar con MongoDB
# seccion-08-node (master-frameworks-javascript)
Notas de la instalación
- Cuando cree este proyecto lo hice con Node 18.14.0 instala NPM 9.3.1
npm init -y # Crear package.json de forma predeterminada
npm init # Crear package.json y nos permite personalizarlo en consola
node index o node index.js # Estos comandos se utilizan para ejecutar el archivo index.js (o cualquier otro archivo de JavaScript específico) en Node.js. Este comando es útil cuando se desea ejecutar un archivo JavaScript que no es una aplicación completa, sino que puede ser una biblioteca o un módulo específico.
npm start # De este modo también levantamos un proyecto en React. Este comando se utiliza para iniciar la aplicación principal de tu proyecto, definida en el archivo package.json. Este comando es útil para automatizar la tarea de iniciar la aplicación y manejar las variables de entorno necesarias.
npm run start # Este comando también inicia la aplicación principal de tu proyecto, pero permite ejecutar cualquier otro script personalizado definido en el archivo package.json. Por ejemplo, si tienes un script personalizado llamado start-dev, puedes ejecutarlo con el comando npm run start-dev.
# Dependencias
Las dependencias siempre estan instaladas en packgage.json del proyecto
npm i # Puedes recuperar node_modules y package-lock.json con el archivo package.json
npm install # Puedes recuperar node_modules y package-lock.json con el archivo package.json
npm update # Actualizar las dependencias que ya tenga, pero ademas instalara las dependencias que faltan
npm update -g # Actualiza todos las dependencias globales
npm install --save-dev nodemon # Instalamos nodemon como dependencia de desarrollo, --save para indicarle que sea dependencia del proyecto y -dev para indicarle que sea dependencia de desarrollo
npm i body-parser # Instalamos body-parser ----> Se encarga de recibir una peticion HTTP normal, se encarga tomar toda esa información, la informacion del body y convertirla a JSON
npm i connect-multiparty # Instalamos connect-multiparty ----> Permite subir archivos al backend
npm i express # Instalamos express ----> Framework que funciona sobre NodeJS, que se encarga de todas las peticiones HTTP, framework backend que se encarga de hacerlo todo, si queremos hacer una API o una aplicacion completa con Node, necesitamos Express
npm i mongoose # Instalamos mongoose ----> Es un ORM, una herramienta de modelado de objetos, diseñada para trabajar con MongoDB
npm i validator # Instalamos validator ----> Validar datos, validar email, string, numero, cosas asi
# Cambios de versión de Node
En esta seccion pondremos cambios de versión de Node:
# Node 8.9.4 a Node 18.14.0 (7-backend-nodejs-two)
# Node 10.16.0 a Node 18.14.0 (3-api-rest-node-two, seccion-08-node)
Notas
Cuando realice este cambio ocurrio el error
[MONGODB DRIVER] Warning: Current Server Discovery and Monitoring engine is deprecated, and will be removed in a future version. To use the new Server Discover and Monitoring engine, pass option { useUnifiedTopology: true } to the MongoClient constructor.- Busque el error, me llevo a esta pagina
- https://stackoverflow.com/questions/57895175/server-discovery-and-monitoring-engine-is-deprecated
- Busque el error, me llevo a esta pagina
Cuando realice este cambio ocurrio el error
MongooseServerSelectionError: connect ECONNREFUSED ::1:27017- Busque el error, me llevo a esta pagina
- https://stackoverflow.com/questions/46523321/mongoerror-connect-econnrefused-127-0-0-127017
- Busque el error, me llevo a esta pagina
Cuando realice este cambio ocurrio el error (Error al guardar, Cambio de versión de Mongoose 6 a Mongoose 7)
throw new MongooseError('Model.prototype.save() no longer accepts a callback') MongooseError: Model.prototype.save() no longer accepts a callback- Busque el error, me llevo a esta pagina
- https://ed.team/comunidad/error-al-guardar
- Busque el error, me llevo a esta pagina
← 4 Python 6 VuePress →