タイトルの通りではありますが、普段たいしてnpmもつかわないPCでブロックの作成 チュートリアルを見ながらWordPressのカスタムブロック練習をしようと、下記のコマンドを実行したところ
$ npx @wordpress/create-block starter-block
↓↓このメッセージが出てきて詰まりました。
Cannot destructure property `writeFile` of 'undefined' or 'null'.
目次
Node.jsのバージョンを上げてみる
確認してみたところ、Node.jsのバージョンが古い。
$ node -v
v8.9.1
nodebrewやnといった素敵なものが入っていないので、Node.js公式サイトからダウンロードしてインストールし、記事執筆時点での最新「v14.15.3」に上げます。
再度 npx @wordpress/create-block starter-block
を試すと…
npm ERR! cb.apply is not a function
あれ?と思って npm cache clean
してみましたが
npm does not support Node.js v14.15.3
npm おかしくなってる!?
Node.jsを入れなおしてみる
ときに、Node.jsとnpmのバージョンがズレることがあるようで、ズレるとおかしくなるとのことでしたので、きれいに消してから入れなおします。
アプリと機能(プログラムの追加と削除)からNode.jsを消す
Node.jsを消します。
%APPDATA%から npm と npm-cache フォルダを消す
C:\Users\[ユーザー名]\AppData\Roaming から npm と npm-cache フォルダを消します。
Node.jsをインストールする
Node.js公式サイトからダウンロードしてインストールします。
直った
Node.jsを入れなおしてみた結果、無事に動作はなおり、コマンドが通るようになりました!
$ npx @wordpress/create-block starter-block
npx: installed 225 in 27.949s
Creating a new WordPress block in "starter-block" folder.
Creating a "block.json" file.
Creating a "package.json" file.
Installing packages. It might take a couple of minutes...
Formatting JavaScript files.
Compiling block.
Done: block "Starter Block" bootstrapped in the "starter-block" folder.
npmの様子がおかしいときは、Node.jsをアンインストール&再インストールが良いかもしれないですね…!
コメント