私には 2 人のユーザーがいます。1 人は古いユーザーで、もう 1 人は新しいユーザーです。古いユーザーと新しいユーザーの両方が node を実行できます。しかし突然、新しいユーザーで node に関連するコマンドを入力するたびに、以下にコピーしたのと同じエラーが表示されるようになりました。
/usr/local/lib/node_modules/npm/bin/npm-cli.js:79
let notifier = require('update-notifier')({pkg})
^^^
SyntaxError: Block-scoped declarations (let, const, function, class) not yet supported outside strict mode
at exports.runInThisContext (vm.js:53:16)
at Module._compile (module.js:374:25)
at Object.Module._extensions..js (module.js:417:10)
at Module.load (module.js:344:32)
at Function.Module._load (module.js:301:12)
at Function.Module.runMain (module.js:442:10)
at startup (node.js:136:18)
at node.js:966:3
皆さん、助けてください。はい、ノード コマンドは古いユーザーでもまだ動作しています。
答え1
ノードは、現在サポートされているすべてのバージョンの Ubuntu の Node.js snap パッケージの名前です。たとえば、ノードのバージョンを確認するには、次のように入力します。
$ノード -v
質問内のエラー メッセージを削除するには、新しいユーザーとしてログインし、次のコマンドを実行して npm 更新チェックを有効にします。
sudo chown -R $USER:$(id -gn $USER) /home/あなたのユーザーネーム.config ファイル
交換する your-username
上記のコマンドに自分のユーザー名を入力してください。