Electron Forge で Vue の単一ファイルコンポーネントを使おうとすると Cannot find module ‘vue/compiler-sfc’ エラー

下記の公式ドキュメントの手順に沿ってビルドしたところ、Cannot find module ‘vue/compiler-sfc’ というエラーが出る…

https://www.electronforge.io/guides/framework-integration/vue-2#using-single-file-components

実施したのは以下のコマンド

yarn create electron-app my-new-app --template=webpack
yarn add --dev vue-loader vue-template-compiler
yarn add vue
yarn remove vue // Vue 3 系がインストールされてしまったので一度消す
yarn add vue@2

Webpack の設定に下記を追加して yarn start した。

const { VueLoaderPlugin } = require('vue-loader');

rules.push({
  test: /\.vue$/,
  loader: 'vue-loader'
});

module.exports = {
  :
  plugins: [
    // make sure to include the plugin!
    new VueLoaderPlugin()
  ]
};

公式ドキュメントではVue2となっているが、エラーに出ているのはVue3で使うライブラリの様子。Vue Loaderが最新だとVue3想定になっている気がする。

といわけで、Vue Loader のページを見たところ v16 は Vue3 でしか動かないとのこと。

https://github.com/vuejs/vue-loader/releases/tag/v16.1.2

なので v15 をインストールし直したら OK だった。

yarn remove vue-loader
yarn add -D vue-loader@15

コメントを残す