Para agentes de IA: hay un índice de documentación disponible en https://www.mongodb.com/es/docs/llms.txt — versiones en markdown de todas las páginas están disponibles agregando .md a cualquier ruta URL.
Make the MongoDB docs better! We value your opinion. Share your feedback for a chance to win $100.
MongoDB Branding Shape
Click here >
Docs Menu

dependencias externas

Una dependencia externa es una librería que incluye código que no puedes o no deseas implementar por tu cuenta. Por ejemplo, podrías utilizar una librería oficial para un servicio externo o una implementación personalizada de una estructura de datos o algoritmo.

Atlas transpila automáticamente las dependencias y también es compatible con la mayoría de los módulos de funcionalidad incorporada de Node.js.

Nota

Crea tus propios módulos

Aunque la mayoría de los módulos npm son desarrollados por terceros, también puedes crear y publicar tus propios módulos npm para alojar la lógica específica de tu aplicación. Puedes poner tus módulos a disposición de la comunidad Node.js o reservarlos para uso privado. Para más información, consulta la guía de npm sobre cómo contribuir con paquetes al registro.

Para importar y usar una dependencia externa, primero debe agregarla a su aplicación. Puede agregar paquetes por nombre o cargar un directorio de dependencias.

Importante

Reemplazar dependencias existentes

Sólo se puede utilizar un método a la vez para especificar los paquetes externos que la aplicación puede utilizar. El método más reciente que utilizaste para especificar las dependencias es la fuente de la verdad y reemplaza las especificaciones anteriores.

Por ejemplo, un paquete agregado por nombre a través de la Interfaz de Usuario reemplaza cualquier copia del mismo paquete que haya agregado previamente, incluidas las que se encuentren en un directorio de dependencias subido.

Puedes agregar paquetes del registro de npm a tu aplicación por nombre. Puede agregar una versión específica o usar la última versión.

1
  1. Si aún no aparece, se debe seleccionar la organización que contiene el proyecto en el menú Organizations de la barra de navegación.

  2. Si aún no se muestra, seleccione su proyecto en el menú Projects de la barra de navegación.

  3. En la barra lateral, haz clic en Triggers en la sección Streaming Data.

Se muestra la página de Triggers.

2
  1. Selecciona el activador al que quieres añadir la dependencia.

  2. En la página Edit Trigger, dirígete a la sección Function y haz clic en Add Dependency.

3
  1. En la ventana modal Add Dependency, incluya la información siguiente:

    Campo
    Descripción

    Definir un nombre de paquete

    El nombre del paquete npm.

    Versión del Paquete

    opcional. Versión específica de la dependencia a utilizar. Por defecto, las funciones de Atlas utilizan la versión más reciente disponible.

  2. Haz clic en Add para agregar el paquete.

Puedes rastrear el estado de la adición de la dependencia en el rastreador de progreso en la parte inferior de la ventana. El rastreador de progreso proporciona un mensaje que te informa si el paquete ha tenido éxito o ha fallado. Los mensajes de error contienen información adicional sobre la razón por la cual no se pudo agregar el paquete.

4

Cuando agregues la dependencia correctamente, la verás en la lista de dependencias en la pestaña Dependencies de la página principal de Triggers.

Puedes subir un directorio comprimido node_modules de paquetes a tu aplicación. Los directorios de dependencias comprimidos no pueden superar los 15 MB.

Importante

Dependencias existentes sobrescritas

Cuando se importa un fichero, se eliminarán todas las dependencias existentes.

1

Para cargar dependencias externas, primero necesitas una carpeta local node_modules que contenga al menos un paquete de Node.js. Puede usar el siguiente snippet de código para instalar una dependencia localmente que se desee cargar:

npm install <package name>

Si la carpeta node_modules no existe ya, este comando la crea automáticamente.

Nota

Métodos alternativos de instalación

También puedes configurar un package.json y ejecutar el comando npm install para instalar todos los paquetes (y sus dependencias) listados en tu package.json.

Para aprender más sobre npm y node_modules, consulta la documentación de npm.

2

Ahora que has descargado todos tus módulos npm, necesitas empaquetarlos en un fichero para poder subirlos a Atlas. Atlas soporta los formatos de fichero .tar, .tar.gz, .tgz y .zip.

Crea un fichero que contenga la carpeta node_modules:

tar -czf node_modules.tar.gz node_modules/

Una vez que crees un fichero que contenga tus dependencias, puedes cargar tu fichero de dependencias usando la Interfaz de Usuario de Atlas.

3
  1. Si aún no aparece, se debe seleccionar la organización que contiene el proyecto en el menú Organizations de la barra de navegación.

  2. Si aún no se muestra, seleccione su proyecto en el menú Projects de la barra de navegación.

  3. En la barra lateral, haz clic en Triggers en la sección Streaming Data.

Se muestra la página de Triggers.

4
  1. Selecciona la pestaña Dependencies.

  2. Haga clic en Upload Folder.

  3. En el modal, haz clic en Upload Folder, luego selecciona el node_modules.tar.gz fichero que acabas de crear.

  4. Haz clic en Add. Atlas sube el fichero del repositorio, lo cual puede tardar varios minutos dependiendo de la velocidad de tu conexión a Internet y el tamaño del fichero de la dependencia.

  5. Atlas muestra una alerta indicando el éxito o fracaso de la operación. Si es exitoso, la pestaña Dependencies muestra una lista de las dependencias que incluiste en tu fichero de dependencias.

    • Si los borradores están habilitados, también debe hacer clic en Review & Deploy para aplicar estos cambios.

    • Si los borradores están deshabilitados, el cambio se hará efectivo en un lapso de 5 a 60 segundos, dependiendo del tamaño de tu fichero de dependencias.

Puede importar módulos de funcionalidad incorporada y paquetes externos que hayas agregado a tu aplicación y luego usarlos en tus funciones. Para importar un paquete, llame a require() con el nombre del paquete desde dentro del cuerpo de la función.

Importante

¿Dónde importo los módulos?

Los proyectos de Node.js generalmente colocan las llamadas require() en el ámbito global de cada archivo, pero Atlas no admite este patrón. Debe realizar require() llamadas dentro del ámbito de una función.

exports = () => {
const R = require("ramda");
return R.map(x => x*2, [1,2,3]);
}
exports = function(arg){
const cloneDeep = require("lodash/cloneDeep");
var original = { name: "Deep" };
var copy = cloneDeep(original);
copy.name = "John";
console.log(`original: ${original.name}`);
console.log(`copy: ${copy.name}`);
return (original != copy);
};