Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

135
Views
Paquete web sin servidor que no incluye el paquete `pg`

Estoy tratando de modificar un código generado a partir de la plantilla aws-nodejs-typescript . Instalé typeorm , reflect reflect-metadata y pg para trabajar con PostgreSQL.

Están en dependencies en package.json ingrese la descripción de la imagen aquí

La configuración del paquete web es la predeterminada.

 const path = require('path'); const slsw = require('serverless-webpack'); const nodeExternals = require('webpack-node-externals'); const TsconfigPathsPlugin = require('tsconfig-paths-webpack-plugin'); /* This line is only required if you are specifying `TS_NODE_PROJECT` for whatever reason. */ // delete process.env.TS_NODE_PROJECT; module.exports = { context: __dirname, mode: slsw.lib.webpack.isLocal ? 'development' : 'production', entry: slsw.lib.entries, devtool: slsw.lib.webpack.isLocal ? 'eval-cheap-module-source-map' : 'source-map', resolve: { extensions: ['.mjs', '.json', '.ts'], symlinks: false, cacheWithContext: false, plugins: [ new TsconfigPathsPlugin({ configFile: './tsconfig.paths.json', }), ], }, output: { libraryTarget: 'commonjs', path: path.join(__dirname, '.webpack'), filename: '[name].js', }, optimization: { concatenateModules: false, }, target: 'node', externals: [nodeExternals()], module: { rules: [ // all files with a `.ts` or `.tsx` extension will be handled by `ts-loader` { test: /\.(tsx?)$/, loader: 'ts-loader', exclude: [ [ path.resolve(__dirname, 'node_modules'), path.resolve(__dirname, '.serverless'), path.resolve(__dirname, '.webpack'), ], ], options: { transpileOnly: true, experimentalWatchApi: true, }, }, ], }, plugins: [], };

El problema: después de la sls deploy el archivo zip no contiene el paquete pg y, por lo tanto, las solicitudes fallan porque el Postgres package has not been found installed. Try to install it: npm install pg --save . ¿Cómo puedo solucionar esto?

Sospecho que esto podría estar sucediendo debido a una resolución de dependencia dinámica o lo que sea, ya que no hay una dependencia directa en mi código y typeorm decide qué controlador usar en función de la cadena en la configuración de la conexión.

PS sls offline funciona, por lo que el código debería ser correcto y el problema está relacionado con este paquete no incluido en el archivo zip.

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Sí, tiene razón, probablemente no haya una dependencia directa y use requisitos dinámicos, es decir, necesita módulos que solo se conocen en tiempo de ejecución.

Por lo tanto, debe forzar la adición usando lo siguiente:

 custom: webpack: includeModules: forceInclude: - pg

Ver inclusión forzada en serverless-webpack .

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!