はじめに
初投稿です...
ElectronのBrowserViewでexecuteJavascriptを使った際、一見正しそうなスクリプトがエラーを吐く問題で少々悩んだので備忘録として。
問題のソースコード
要素の取得に失敗したらfalse、成功したら真を返したい
const result = await browserView.webContents.executeJavaScript(`
const anko = document.getElementById("anko");
return anko == null ? false : true;
`)
正しいソースコード
どうやらreturnで返しちゃだめらしいです。(そんなん知らんよ…)
最後に評価された値が返却されるらしい。
const result = await browserView.webContents.executeJavaScript(`
let val = true;
const anko = document.getElementById("anko");
anko == null ? false : true;
`)
現在作っているアプリ
Youtube Live用のコメントビュワーです(Electron製)(ベータ版)
配信する方はぜひどうぞ