SI esto no les funciona deben agregar la integración de node en su ventana.
De esta forma:
let win = new BrowserWindow({
webPreferences: {
nodeIntegration: true
}
})```
Introducción a Electron
Paso a paso para construi aplicaciones con Electron
¿Qué es Electron?
¿Cómo funciona Electron?
Herramientas necesarias
Comenzando con Electron
Creando nuestro proyecto
Nuestra primera ventana
Propiedades de una ventana de Electron
Comenzando con nuestro aplicativo
El frontend y Electron
Configurando nuestro frontend
Herramientas de desarrollo para Electron
Algunos frameworks recomendados
Construyendo el layout
Completar elementos del Layout
Agregando interacción a nuestra aplicación
JavaScript en el frontend
Selecciona imágenes
Buscar imágenes
Añadir filtros a la imagen
Comunicación entre procesos
Accesando recursos de la máquina
Leer archivos de directorios
Generar listas de imagenes
Refactor del proyecto
Usando el diálogo de guardar
Guardar imágenes en disco
Usando cajas de mensajes
Detectando errores
Interactuando con el sistema operativo
Organizando el código del proceso principal
Múltiples ventanas y comunicación entre ellas
Creando assets para una nueva ventana
Consideraciones para múltiples plataformas
Manejo de preferencias
Usuario y contraseña
Creando un Ãcono en la bandeja del sistema
Imprimiendo
Subir una imagen
Portapapeles con texto o imágenes
Emitiendo notificaciones
Agregando un Menú
Atajos
Protocolos personalizados
Generando un ejecutable para nuestra aplicación
A tener en cuenta para generar ejecutables
Configurando el entorno para construcción
Configurando el entorno para construcción 2
Personalizando nuestro ejecutable
Creando paquetes para distribuir nuestro aplicativo
Considerando instaladores para múltiples plataformas
Firmas digitales con Code Signing
Cierre del curso
Bonus
Integración continua
Escribiendo tests con Ava y Spectron
Desafios
Crear un filtro personalizado
Leer las imágenes ubicaciones remotas (Cloudup)
Previsualización de filtros
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
platzerito18092018 platzerito18092018
Cuando usamos Electron en el frontend tenemos acceso al API del navegador el API de Node.js, y el API de Electron.
Es decir podemos tener acceso a las propiedades del Sistema Operativo, lo que es una ventaja muy significativa comparado con el desarrollo de aplicaciones Web.
Aportes 6
Preguntas 0
SI esto no les funciona deben agregar la integración de node en su ventana.
De esta forma:
let win = new BrowserWindow({
webPreferences: {
nodeIntegration: true
}
})```
Cuando usamos Electron en el frontend tenemos acceso al API del navegador el API de Node.js, y el API de Electron.
Es decir podemos tener acceso a las propiedades del Sistema Operativo, lo que es una ventaja muy significativa comparado con el desarrollo de aplicaciones Web.
Activar la integración de node con el frontend no es recomendable. La integración da opciones al cliente (frontend) de ejecutar sentencias de código node mediante la terminal. La activación de estas opciones ha ido cambiando entre las versiones de Electron.
Con os podemos obtener información del sistema operativo. Información que nos ayuda a usar el potencial del computador o adecuar nuestra aplicación para administrar de manera adecuada sus recursos.
El siguiente fragmento de código nos permite obtener información del hardware donde estamos corriendo nuestra aplicación.
import os from 'os'
window.addEventListener('load', () => {
console.log(os.cpus())
})
Para agregar node en versiones hasta la 8 requiere activar su integración en las opciones de creación de la ventana.
function createMainWindow() {
const win = new BrowserWindow({
title: 'Images Resizes',
width: 800,
height: 600,
webPreferences: {
nodeIntegration: true
}
});
Como habilitar la integración de node en las ventanas es un fallo de seguridad en versiones superior a la 8 es necesario desactivar las opciones de seguridad además de activar la activación de la integración de node.
function createMainWindow() {
const win = new BrowserWindow({
title: 'Images Resizes',
width: isDev ? 800:1000,
height: 600,
webPreferences: {
nodeIntegration: true,
contextIsolation: false
}
});
No logre hacerlo funcionar en el devtools, pero si en la consola del node. Desde que empecé el curso que tengo problemas con requiere, const, etc. Ahora se hace diferente, y no encuentro ejemplos muy claros que me hagan entender como y cuando usar cada cosa. Este curso se viene cada vez más a pique, siendo tan importante electron hoy en dÃa.
Genial!
Si están intentando replicar el ejemplo con React, la manera de realizarlo serÃa de la forma
let os = window.require('os')
es genial el poder usar todo el potencial de node tambien
excelente clase
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?