Quantcast
Channel: Node.jsタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 8833

electron で "require is not defined" がどうしても消えないとき

$
0
0

electron でどうしても"require is not defined" が消えない!!

electron を使用していると"require is not defined" Errorが出ることがあります。原因はわかっておりGoogleで検索すると沢山記事は出ています。Node.jsのモジュールであるrequireをFrontEndで使えないことが原因です。electron側の仕様でwebPreferences のnodeIntegrationパラメターがdefaultでfalseになっている事が原因で、

mainWindow = new BrowserWindow({
    width:1100, 
    height: 1000,
    webPreferences: {
      nodeIntegration: true,
    },
  });

としたらとりあえずはOkですよと沢山の記事に書かれています。(セキュリティーの問題から公式では推奨されていない。)
しかし、僕の場合上記を試しても一向にエラーが消えない!なんでだ!!

electron v11からv12でまた仕様が変わったみたい

色々調べていると、どうもつい最近また仕様が変更になったみたいです。
v11からv12になった時に webPreferencesの 'contextIsolation'パラメターがdefaultでtrueになっており、その事で上の解決法を試しても上記エラーが消えなかったようです。

mainWindow = new BrowserWindow({
    width:1100, 
    height: 1000,
    webPreferences: {
      nodeIntegration: true,
      contextIsolation: false
    },
  });

これでやっと"require is not defined"が消えましたとさ。。。。

どなたかの参考になれば幸いです。


Viewing all articles
Browse latest Browse all 8833

Trending Articles