あしあと

自分自身のログ(足跡)となります。ソフトウェアエンジニアです。ブログはテック系の内容が少し多めです。

Electron起動時に"Uncaught ReferenceError: require is not defined"が表示される

現象

Electron起動時に、"Uncaught ReferenceError: require is not defined"というエラーが表示される。

f:id:pyo_hei:20190610084952p:plain

原因

require文が書かれているためです。
require文は標準の機能ではなく、Node.js側で用意された機能のため、標準のJavaScriptを利用する場合、使うことができません。

stackoverflow.com

Node.jsのドキュメントは、以下にあたります。

nodejs.org

解決方法

BrowserWindowのオプションでNodeの設定をONにすることができます。
webPreferences.nodeIntegrationtrueにすれば良いです。

  mainWindow = new BrowserWindow({
    width: 800,
    height: 600,
    /** 以下の設定をする */
    webPreferences: {
      nodeIntegration: true
    }
    /** ----------------- */
  })

``

※上記のソースは[electron-quick-start](https://github.com/electron/electron-quick-start)を参考にしました。  

# 所感

にわかJavaScriptユーザーには結構辛いです^^;