Tengo un cliente React creado con webpack. Agrega cada archivo a una URL/version/ carpeta.
Sin embargo, una vez que se carga la página HTML, carga una vista que crea la URL URL/App/Home . Después de este punto, cada fragmento se carga desde URL/App/Home/version/script.js en lugar de la URL/version/script.js .
Entiendo que esto puede estar relacionado con publicPath en webpack. Sin embargo, solo puedo agregar más carpetas a la URL, no puedo eliminar la App/Home o la URL completa actual.
Esta es la configuración del paquete web:
output: { filename: "[name].js", path: path.join(dir, build), publicPath: path.join(version, "/"), } Mi enrutador es un <BrowserRouter> en 5.1.2 sin configurar ninguna propiedad.
Otra cosa que es interesante es que hemos codificado en HTML un script como:
<script defer src="<%= htmlWebpackPlugin.options.prefix%>/script.js"></script> Este script se carga bien, incluso si se accede a través de URL/App/Home .
Probé muchas cosas diferentes, y lo único que funcionó fue configurar manualmente una etiqueta base en el HTML. Sin embargo, esto no parece una solución particularmente limpia, especialmente porque tenemos múltiples entornos que requieren diferentes etiquetas.
Otra solución fue usar Hash Router, pero no queremos los hash en la URL.
¿Hay alguna solución limpia para esto que me falta o es una restricción debido a cómo funciona el navegador?