LoginSignup
2
0

Nuxt3をインストール・アップグレードしたときのpackage.jsonの謎

Posted at

(現在進行中の謎です。分かり次第追記する)

概要

  • Nuxt3のプロジェクトでvueやnuxtをpackage.jsonのdependenciesに書くのかdevDependenciesにするのか
  • ディスカッションであったり、動きを確認してみたけれどいまいちよくわかっていない

ディスカッション

ビルド出力がルートプロジェクトのpackage.jsonではなく、output/serverフォルダの新しいpackage.jsonに依存しているため、すべてをdevDependenciesに含めることができる。とのこと

なるほど(よくわからん)

手元で試す

$ docker run --rm -v $(pwd):/app -w /app -p 85:80 -it node:lts-slim /bin/bash

ここからコンテナ上で作業

$ npx nuxi@latest init
$ cd nuxt-app
$ cat package.json
{
  "name": "nuxt-app",
  "private": true,
  "type": "module",
  "scripts": {
    "build": "nuxt build",
    "dev": "nuxt dev",
    "generate": "nuxt generate",
    "preview": "nuxt preview",
    "postinstall": "nuxt prepare"
  },
  "dependencies": {
    "nuxt": "^3.12.1",
    "vue": "^3.4.27",
    "vue-router": "^4.3.3"
  }
}  

あれ? devDependenciesじゃないのか

もちろんビルドはできる

$ npm run dev

一旦まっさらにする

$ rm -rf node_modules .nuxt .output

package.jsonをこうする

{
  "name": "nuxt-app",
  "private": true,
  "type": "module",
  "scripts": {
    "build": "nuxt build",
    "dev": "nuxt dev",
    "generate": "nuxt generate",
    "preview": "nuxt preview",
    "postinstall": "nuxt prepare"
  },
  "devDependencies": {
    "nuxt": "^3.12.1",
    "vue": "^3.4.27",
    "vue-router": "^4.3.3"
  }
}

これもビルドはできる

$ npm install
$ npm run dev

次はupgradeしてみる

$ npx nuxi upgrade

なるほど????

{
  "name": "nuxt-app",
  "private": true,
  "type": "module",
  "scripts": {
    "build": "nuxt build",
    "dev": "nuxt dev",
    "generate": "nuxt generate",
    "preview": "nuxt preview",
    "postinstall": "nuxt prepare"
  },
  "dependencies": {
    "vue": "^3.4.27",
    "vue-router": "^4.3.3"
  },
  "devDependencies": {
    "nuxt": "^3.12.1"
  }
}

よくわからん

雑感

どこかで追加調査する

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0