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

597
Views
WebPack: problema al compilar archivos JS en html

Tengo un problema mientras trabajo con Webpack. Estoy usando un archivo JS para llamar a una API, pero esta API debe llamarse solo en escudos.html, pero cuando hago la compilación de Webpack, el archivo JS llama a la API int (index.html, escudos.html). Solo quiero que ./src/js/teams.js llame a la API cuando estoy en escudos.html, no en ambos (index.html, escudos.html) HTML.

 const path = require('path'); const HtmlWebpackPlugin = require('html-webpack-plugin'); module.exports = { entry: { index: './src/js/index.js', teams: './src/js/teams.js', }, output: { path: path.resolve(__dirname, 'dist'), filename: 'js/[name].bundle.js', }, plugins: [ new HtmlWebpackPlugin({ filename: 'index.html', template: './src/index.html', }), new HtmlWebpackPlugin({ filename: 'escudos.html', template: './src/escudos.html', }), ], devServer: { static: './dist', }, module: { rules: [ { test: /\.js$/, exclude: /node_modules/, use: { loader: 'babel-loader' }, }, ], }, };

por alguna razón, mi archivo webpacked index.html también tiene teams.js

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

El problema (y la solución) está en HtmlWebpackPlugin. HtmlWebpackPlugin inyecta todas las entradas en cada página de forma predeterminada.
Existen tres soluciones que se me ocurren:

  1. inject: false : esto deshabilita la inyección automática de etiquetas <script> en la plantilla. Debe escribir manualmente las etiquetas <script> con el src adecuado. (Psss: no)
  2. chunks : especifique qué entradas desea que se incluyan en esta plantilla. EG: (Resuelve el problema OP, lo que necesitará/usará en la mayoría de los casos)
     new HtmlWebpackPlugin({ template: "./src/index.html", chunks: ["index"] }), new HtmlWebpackPlugin({ template: "./src/escudos.html", chunks: ["teams"] })
  3. exclude : inyecta todas las entradas excepto las especificadas en esta matriz. P.EJ
     new HtmlWebpackPlugin({ template: "./src/test.html", exclude: ["index"] })
about 4 years ago · Juan Pablo Isaza 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!