Nuxt.jsでnpm run devをした時に「SyntaxError: Invalid regular expression flags」というエラーが出た時の対処法

Nuxt.jsでローカルサーバーを立ち上げるためにnpm run devをした時に、「SyntaxError: Invalid regular expression flags」というエラーが出たので、この対処法を紹介していく。

開発環境

  • Nuxt 2.4.0
  • Node 8.9.4
  • Mac
  • NodeのバージョンはNodeBrewで管理

具体的なエラー文

npm run devでローカルサーバーを立ち上げようとしたら、以下のようなエラー文が出てきた。

user/sample/node_modules/@nuxt/utils/dist/utils.js:1752
const match = asString.match(/^([^{(]+)=>\s*(.*)/s);
SyntaxError: Invalid regular expression flags

上記のエラー文は、正規表現のflagが不適切だよというもの。
ボクの場合は、ただNuxt.jsの公式ドキュメントに沿ってインストールしていただけなので、コードには一切触れていなかった。

なので、Nuxt.js側のバグやNode.jsなどの相性が悪いなどの原因が考えられた。

解決策

上記のエラー文のように、特にコードを触っていないのにSyntaxErrorが起こる場合は、大体Nodeのバージョンをあげるとうまく行く。

実際に、ボクもNodeのバージョンを8.9.4から11.5.0にあげることで動くようになった。

類似のエラーになるけど、やはりバージョンをあげることで解決することが多いようだ。

参考:SyntaxError: Unexpected token … · Issue #2927 · nuxt/nuxt.js

参考:npm run dev: Exit status 3221225725 · Issue #5530 · nuxt/nuxt.js

ReratedPosts

JavaScriptの配列で参照渡しではなく値渡しをする方法と注意点
素のJavaScriptでappend,prepend,after,beforeが実装されていたので紹介する
JavaScriptでファイルダウンロードを実現するための5ステップ
jQueryの代替ライブラリとして「min.js」がオススメなので紹介する
オセロをMinMax法を導入する方法(JavaScript編)
Jqueryのクリックとかミスしたこととかのメモ