前置き
チュートリアルにあるコマンドで生成したテンプレートにある、yarn start
または、npm run start
で開始するとlighthouseでpwaテスト時にエラーが出て発覚
一応コマンドの中身
cross-env NODE_ENV=production node server/index.js
.nuxt/index.js
import 'es6-promise/auto'
import Vue from 'vue'
import Meta from 'vue-meta'
import { createRouter } from './router.js'
import NoSSR from './components/no-ssr.js'
import NuxtChild from './components/nuxt-child.js'
import NuxtLink from './components/nuxt-link.js'
import NuxtError from './components/nuxt-error.vue'
import Nuxt from './components/nuxt.js'
import App from './App.js'
import { setContext, getLocation, getRouteData } from './utils'
/* Plugins */
import nuxt_plugin_swplugin_708a52a3 from 'nuxt_plugin_swplugin_708a52a3' // Source: ./sw.plugin.js (ssr: false)
このnuxt_plugin_swplugin_708a52a3
がないって怒られた。
解決策
https://pwa.nuxtjs.org/modules/workbox.html
pwaはworkbox(サービスワーカーをラップしたライブラリ)を使っていて、そこを辿ってたら、これじゃね?的な感じで発見した。
ですので、pwaテストをする場合は、nuxt build && nuxt start
する必要がある
最後に
そもそもnuxt_plugin_swplugin_708a52a3
とかの名前解決ってnuxtはどうやってるんだろう。。。?