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

360
Vistas
Dígale a vite a scripts externos en línea

Espero poder hacer esta pregunta de manera algo congruente. Estoy en una situación en la que mi compilación de producción vite no funciona, pero la compilación de desarrollo sí.

Estoy en un sitio renderizado estáticamente, dentro de un site de carpeta, que luego es tomado por vite para crear el resultado final. Trabajo principalmente en una subcarpeta _svelte . Allí también tengo una carpeta llamada api que contiene algunas funciones que me gustaría usar fuera de svelte.

En site , hay otra página html, digamos test/index.html . Esa página contiene un <script type="module"> , que luego importa estas funciones desde /_svelte/api .

Ahora, todo esto funciona en desarrollo, pero en producción, el paquete para test/index.html contiene referencias a las rutas de script, como en /_svelte/api , etc. Pero estos archivos nunca existen, por lo que todo falla.

La configuración de mi vite se ve así:

 export default defineConfig(({ command, mode }) => { if (command === 'build') { // these are all entry files for vite const files = fg.sync('**/*.html', { cwd: process.env.ROOT, absolute: true, }); const external = fg.sync('../_svelte/**/*.ts', { cwd: process.env.ROOT, absolute: true, }) .map((file) => file.replace(`${__dirname}/site`, '')) .filter((file) => !file.includes('main') && !file.includes('vite-env.d.ts')) .map((file) => file.replace('.ts', '')); return { plugins: [svelte({ configFile: '../../svelte.config.js' })], root: process.env.ROOT, build: { publicDir: '../public', rollupOptions: { input: { main: resolve(process.env.ROOT, 'index.html'), ...Object.fromEntries( files.map((file) => [basename(file.replace('/index', ''), '.html'), file]) ), }, external, }, }, }; } });

Espero que esta información sea suficiente para ayudarme de alguna manera en esta situación. No estoy seguro de cómo solucionarlo, todo es bastante opaco.

about 4 years ago · Juan Pablo Isaza
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