Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

227
Visualizações
¿Cómo puedo aplicar dinámicamente scripts y hojas de estilo a las URL externas en Electron.js?

Estoy tratando de hacer una pequeña aplicación de electrones que cargue un sitio web aleatorio a través de 'loadURL' y luego le aplique dinámicamente scripts y hojas de estilo.

Hice una aplicación de ejemplo simple, que carga https://stackoverflow.com/ , y en 'preload.js' agrega 'renderer.js' y 'styles.css' al DOM del sitio web. Aquí está el código:

principal.js

 const {app, BrowserWindow} = require('electron') const path = require('path') function createWindow () { const mainWindow = new BrowserWindow({ width: 800, height: 600, webPreferences: { preload: path.join(__dirname, 'preload.js') } }) mainWindow.loadURL('https://stackoverflow.com/') } app.whenReady().then(() => { createWindow() app.on('activate', function () { if (BrowserWindow.getAllWindows().length === 0) createWindow() }) }) app.on('window-all-closed', function () { if (process.platform !== 'darwin') app.quit() })

precargar.js

 window.addEventListener('DOMContentLoaded', () => { //Dynamic style linking to the document var fileref = document.createElement("link") fileref.setAttribute("rel", "stylesheet") fileref.setAttribute("href", "E:/SomeCodingStuff/testElectron/test/styles.css") document.getElementsByTagName("head")[0].appendChild(fileref) //Dynamic script linking to the document var fileref2 = document.createElement("script") fileref2.setAttribute("src", "E:/SomeCodingStuff/testElectron/test/renderer.js") document.getElementsByTagName("body")[0].appendChild(fileref2) })

renderizador.js

document.body.classList.add('blue_background');

estilos.css

 .blue_background{ background-color: cornflowerblue; }

Como puede ver, esta aplicación debería abrir un sitio web y cambiar el color de su cuerpo a azul, y funciona perfectamente bien con un archivo local 'index.html' y 'loadFile', pero con 'loadURL' se niega a cargar recursos locales: captura de pantalla de una consola

Encontré una publicación al respecto: No se puede abrir el archivo local - Chrome: no se permite cargar el recurso local, por lo que entiendo que Chrome se niega intencionalmente a cargar archivos locales. La solución provista en esa publicación (cargar estos archivos usando un servidor local) funciona bien para mí, pero es demasiado voluminosa e inconveniente para una aplicación que quiero hacer.

Parece que no hay otra solución en la codificación web clásica, pero ¿hay alguna solución electrónica para este problema?

Estaría agradecido por cualquier sugerencia!

about 4 years ago · Juan Pablo Isaza
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda