Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

161
Vistas
Webpack, las imágenes desaparecen después de los cambios de css, usando webpack-dev-server

Tengo un problema con la configuración de mi Webpack. Después de escribir la etiqueta, aparece la imagen, pero devServer elimina todas las imágenes después de que las aplicaciones de estilos se recargan inmediatamente después de la página. Y no volvería hasta que la ruta se agregara nuevamente en la etiqueta. Vea este video de captura de pantalla para tener una mejor imagen de lo que está sucediendo .

webpack.config.js:

 const path = require('path') const HtmlWebpackPlugin = require('html-webpack-plugin') const MiniCssExtractPlugin = require('mini-css-extract-plugin') let mode = 'development' let target = 'web' if (process.env.NODE_ENV === 'production') { mode = 'production' target = 'browserslist' } const plugins = [ new HtmlWebpackPlugin({ template: './index.html', }), new MiniCssExtractPlugin({ filename: '[name].[contenthash].css', }), ] module.exports = { mode, plugins, target, context: path.resolve(__dirname, 'src'), entry: { main: './main.js', }, output: { path: path.resolve(__dirname, 'dist'), assetModuleFilename: 'assets/[hash][ext][query]', clean: true, }, optimization: { splitChunks: { chunks: 'all', }, }, devServer: { static: { directory: path.join(__dirname, 'src'), }, compress: true, open: true, hot: true, port: 3001, }, resolve: { extensions: ['.js', '.ts', '.jsx', '.tsx'], }, module: { rules: [ { test: /\.(html)$/, use: ['html-loader'], }, { test: /\.(s[ac]|c)ss$/i, use: [MiniCssExtractPlugin.loader, 'css-loader', 'sass-loader'], }, { test: /\.(png|jpe?g|gif|svg|webp|ico)$/i, type: mode === 'production' ? 'asset' : 'asset/resource', }, { test: /\.(woff2?|eot|ttf|otf)$/i, type: 'asset/resource', }, { test: /\.(js|jsx)?$/, exclude: /node_modules/, use: { loader: 'babel-loader', options: { cacheDirectory: true, }, }, }, { test: /\.(ts|tsx)?$/, exclude: /node_modules/, use: { loader: 'ts-loader', }, }, ], }, }
about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Tengo el mismo problema. Me di cuenta de que las imágenes que se importan en archivos JavaScript con import funcionan bien. El problema proviene de imágenes en archivos HTML, procesadas con html-loader . Busqué mucho, no encontré por qué sucede esto, pero aquí hay una forma de evitar el problema:

Primero, asegúrese de que el directorio estático de devServer sea el mismo que el directorio de salida de Webpack. Luego, cada vez que agregue una nueva imagen, detenga su servidor de desarrollo, ejecute npm run build o cualquier comando que use para construir su proyecto, y luego ejecute npm start . Y después de eso funcionaría bien.

Con respecto a los cambios de CSS, el problema se solucionó después de actualizar mi webpack-dev-server de v3.11.2 a v4.9.1 . Aunque cuando cambio un archivo TypeScript (estoy compilando TypeScript a JavaScript), el problema persiste y la solución anterior sigue siendo válida.

Si realiza esa migración de versión, dependiendo de su versión anterior, es posible que se realicen algunos cambios en la entrada de devServer en webpack.config.js . Consulte el documento si tiene errores.

about 4 years ago · Juan Pablo Isaza Denunciar

0

Tuve un problema similar: noté que cambiar output.clean = false en el archivo webpack.dev.js resuelve el problema cuando output.path era nulo.

La respuesta seleccionada arriba también funcionó para mí.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda