1 post(s) tagged with "electron"

View All Tags

Electron 7.0 릴리즈

Jimmy Moon

Jimmy Moon

Chief Editor

Electron 7.0 이 릴리즈 되었다. 엔진들의 업데이트와 함께 빠른 IPC 를 위한 새로운 API 를 추가 하였고 OS 의 시스템 컬러 테마를 사용하여 타크, 라이트 모드 테마를 이용할 수 있게 되었다. 자세한 업데이트는 원문 블로그를 참고하자.

Upgrades

  • Chromium 이 78.0.2905.1 로 업그레이드 CSS Properties and Values API 와 서비스 워커 자동 업데이트를 사용할 수 있다
  • V8 이 7.8 로 업그레이드 되어 Script streaming 이나 WebAssembly 의 성능향상을 기대
  • Node.js 가 12.8.1 로 업그레이드 변경 사항은 Node.js 한국 커뮤니티 문서를 참고

Changes

  • Windows on Arm(64bit) 릴리즈가 추가
  • 새로운 비동기적으로 형태의 IPC API ipcRenderer.invoke 와 ipcMain.handle 추가, Renderer 의 영향이 없이 데이터를 비동기로 주고 받을 수 있다.
ipcRenderer.invoke('some-name', someArgument).then(result => {
// 비동기로 리턴 된 결과 값 받음
})
// Main process
ipcMain.handle('some-name', async (event, someArgument) => {
// 비동기로 작업 완료 후 리턴
const result = await doSomeWork(someArgument)
return result
})
  • nativeTheme 가 추가되어 OS 의 다크모드등을 셋팅하거나 현재 시스템의 테마 상태를 알 수 있다.
const { app, BrowserWindow, nativeTheme } = require('electron')
const path = require('path')
function createWindow() {
nativeTheme.themeSource = 'dark'
mainWindow = new BrowserWindow({
width: 800,
height: 600,
webPreferences: {
preload: path.join(__dirname, 'preload.js')
},
backgroundColor: nativeTheme.shouldUseDarkColors ? '#efefef' : '#000000'
})
mainWindow.loadFile('index.html')
mainWindow.on('closed', function() {
mainWindow = null
})
}
app.on('ready', createWindow)