Tengo dos archivos .html que usan el mismo código y activos de Javascript. Como representan versiones en diferentes idiomas del mismo sitio, me gustaría construirlos en diferentes subdirectorios con paquete.
Actualmente, los estoy construyendo de forma asimétrica. Los archivos .html son los puntos de entrada, siendo index.html la versión en inglés:
Entrada actual:
|-*.css, *.js, ... |–index.html |-de.htmlSalida de corriente:
dist |-*.css, *.js, ... |-index.html |-de.htmlComando de compilación actual
parcel build --public-url . index.html de.htmlSin embargo, me gustaría tenerlos de una manera más simétrica:
Entrada deseada:
|-*.css, *.js, ... |–en |-index.html |-de |-index.htmlSalida deseada:
dist |-*.css, *.js, ... |–en |- index.html |-de |- index.htmlMe pregunto dos cosas aquí:
index.html y de.html a en/index.html y de/index.html , ¿tengo que subir los enlaces relativos en los archivos html, por ejemplo, desde <link rel="stylesheet" href="example.css"> a <link rel="stylesheet" href="./example.css"> o ¿esto se soluciona automáticamente al cambiar el comando de compilación?Pude resolverlo yo mismo usando este ejemplo de un informe de error aquí . Como quiero conservar solo la estructura de archivos de mis puntos de entrada (los archivos html en mi caso), esto se puede lograr con bastante facilidad.
Por ejemplo, con la siguiente entrada :
|- test.js |- locales |- en |- index.html |- de |- index.htmlObtengo el siguiente resultado :
dist |- test.js |- en |- index.html |- de |- index.html Usando este comando en mi package.json :
parcel build locales/**/*.html --public-url ../ Para usar test.js en uno de los archivos html, es necesario subir dos directorios con esta estructura:
<script src="../../test.js"></script> Por supuesto, también es posible omitir el subdirectorio locales , entonces solo se necesita usar ../ en el script.
Parece que no es tan fácil si uno quiere conservar la estructura de directorios de los puntos que no son de entrada, pero en mi caso resultó ser muy fácil.