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

165
Views
La API de Next.js incluye un archivo para todos los puntos finales de la API

¿Es posible (y cómo) agregar algún tipo de archivo "bootstrap" (archivo con efectos secundarios) como un primer archivo que se incluirá en todas las API en Next.js?

El caso de uso original es que tengo winston logger en un archivo que tengo que poner en todos los puntos finales de la API, pero este es un DX bastante pobre. Solo quiero decir "oye, pon este archivo antes de todos los puntos finales, para que sepa (en este caso, el registrador) que todo está configurado".

Gracias

about 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Entonces, encontré la solución en una configuración de paquete web personalizado:

 import withPlugins from 'next-compose-plugins'; import { patchWebpackConfig } from 'next-global-css'; import images from 'next-images'; import withTM from 'next-transpile-modules'; import { merge } from 'webpack-merge'; export default withPlugins([ images, withTM([]), ], { swcMinify: true, images: { formats: ['image/avif', 'image/webp'] }, productionBrowserSourceMaps: false, // experimental: { // outputStandalone: true, // }, webpack: (config, { webpack, buildId, isServer, ...options }) => { config.plugins.push( new webpack.DefinePlugin({ 'process.env.BUILD_ID': JSON.stringify(buildId), }), ); if (isServer) { return merge(config, { entry() { return config.entry().then(entry => { // this is the interesting part: prefix entry with a bootstrap file, in my case logger side-effect file Object.keys(entry).map(key => { entry[key] = {import: ['./src/service/bootstrap.ts', ...entry[key]]}; }); return entry; }); } }); } return patchWebpackConfig(config, options); }, reactStrictMode: true, staticPageGenerationTimeout: 15, });
about 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!