経験知ロゴ

Electronアップデート時の個人的なメモ

Electronアップデート手順

Electronをアップデートする時の個人的なメモです。

アップデート

Electronの最新版をインストール

npm i electron@latest

Stable Releases | ElectronでインストールしたElectronの対応nodeバージョンを調べる。メジャーバージョンのX.0.0にnodeのバージョンが書かれている。

nodistでnodeのバージョンを管理している場合、インストール可能なバージョンを確認。

nodist dist

Electronのnodeのバージョンと近いバージョンをインストールし変更。

nodist 14.4.0

変更したバージョンに合ったnpmをインストール。

nodist npm match

その他

nedb関連で下記のようなエラーが出た場合

node_modules/@types/nedb/index.d.ts(9,23): error TS4090: Conflicting definitions for 'node' found at 'C:/Users/admin/AppDev/LeanEditor/node_modules/@types/node/ts3.7/index.d.ts' and 'C:/Users/admin/AppDev/LeanEditor/node_modules/electron/node_modules/@types/node/index.d.ts'. Consider installing a specific version of this library to resolve the conflict.
[2] wait-on http://localhost:3000 && tsc -p electron && electron . exited with code 1
[1] node_modules/@types/nedb/index.d.ts(9,23): error TS4090: Conflicting definitions for 'node' found at 'C:/Users/admin/AppDev/LeanEditor/node_modules/@types/node/ts3.7/index.d.ts' and 'C:/Users/admin/AppDev/LeanEditor/node_modules/electron/node_modules/@types/node/index.d.ts'. Consider installing a specific version of this library to resolve the conflict.

node_module/@types/nodeのバージョンを、node_modules/electron/node_module/@types/node/package.jsonの「_id」に書かれているバージョンにする。

npm i @types/node@バージョン番号

nodeのバージョンを、node_module/electron/node_module/@types/node/package.jsonの「_id」に書かれているバージョンに近いバージョンに上げる。

@types/nedbが、

/// 

というところで「@types/node/index.d.ts」を使うと宣言していて、node_modules/@types/node/index.d.tsとnode_modules/electron/node_modules/@types/node/index.d.tsの2つあるのが原因。

おわりに

バージョンアップすると何かとエラーが出るので困ります…。

役に立ったらこの記事のシェアをお願いします

ブログのフォロー・RSS購読は下記ボタンから