質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.47%
Nuxt.js

Nuxt.jsは、ユニバーサルなSPAが開発可能なVue.jsベースのフレームワーク。UIの描画サポートに特化しており、SSRにおけるサーバーサイドとクライアントサイドのUIレンダリングなどさまざまな機能を持ちます。

Vuetify.js

Vuetify.jsは、マテリアルデザインを基本とするVue.jsのCSSフレームワークです。多くのマテリアルデザインのコンポーネントを提供しており、あらゆるアプリケーションに対応可能。vue-cli用テンプレートがあり、簡単にページを作成できます。

Q&A

解決済

4回答

2364閲覧

Vuetify3でエラー head.addHeadObjs is not a function(Nuxt3+Vue3)

harapara

総合スコア39

Nuxt.js

Nuxt.jsは、ユニバーサルなSPAが開発可能なVue.jsベースのフレームワーク。UIの描画サポートに特化しており、SSRにおけるサーバーサイドとクライアントサイドのUIレンダリングなどさまざまな機能を持ちます。

Vuetify.js

Vuetify.jsは、マテリアルデザインを基本とするVue.jsのCSSフレームワークです。多くのマテリアルデザインのコンポーネントを提供しており、あらゆるアプリケーションに対応可能。vue-cli用テンプレートがあり、簡単にページを作成できます。

0グッド

0クリップ

投稿2023/04/17 07:57

実現したいこと

Nuxt3+Vue3でVuetifyを使用したい。

Nuxt3+Vue3の導入を検討中です。(Typescriptは初めてです。)
試しに1からNuxt3でプロジェクトを進めて、サンプルのウェルカムページが立ち上がるところまで完了。
次にVuetify3の設定を追加したところで、以下エラーが出ました。

TERMINAL

1[nuxt] [request error] [unhandled] [500]head.addHeadObjs is not a function 2at Object.install (C:\xxx\node_modules\vuetify\lib\framework.mjs:51:11) 3at Object.use (C:\xxx\node_modules\@vue\runtime-core\dist\runtime-core.cjs.js:4377:28) 4at Object.setup (C:\xxx\plugins\vuetify.js:17:18) 5at wrapper (C:\xxx\node_modules\nuxt\dist\app\nuxt.js:198:21) 6at fn (C:\xxx\node_modules\nuxt\dist\app\nuxt.js:214:27) 7at Object.callAsync (/C:/xxx/node_modules/unctx/dist/index.mjs:49:19) 8at callWithNuxt (C:\xxx\node_modules\nuxt\dist\app\nuxt.js:216:23) 9at applyPlugin (C:\xxx\node_modules\nuxt\dist\app\nuxt.js:129:29) 10at Module.applyPlugins (C:\xxx\node_modules\nuxt\dist\app\nuxt.js:139:11)

「head.addHeadObjs」で検索してもヒットせず、基本的なことでミスしてそうですが、知識も浅く、原因が思いつかないです。。
どなたか解決法をご存じないでしょうか。。

前提

node : v16.13.2

package.json

1{ 2 "name": "nuxt-app", 3 "private": true, 4 "scripts": { 5 "build": "nuxt build", 6 "dev": "nuxt dev --port=3008", 7 "generate": "nuxt generate", 8 "preview": "nuxt preview", 9 "postinstall": "nuxt prepare" 10 }, 11 "devDependencies": { 12 "nuxt": "^3.4.1", 13 "sass": "^1.62.0", 14 "vite-plugin-vuetify": "^1.0.2" 15 }, 16 "dependencies": { 17 "mdi": "^2.2.43", 18 "vuetify": "^3.1.4" 19 } 20}

試したこと

大体どのサイトも同じような記述だったのでそれを参考にしてます。

nuxt.config.ts

1export default defineNuxtConfig({ 2 vite: { 3 define: { 4 'process.env.DEBUG': false, 5 } 6 }, 7 css: ['vuetify/lib/styles/main.sass', 'mdi/css/materialdesignicons.min.css'], 8 build: { 9 transpile: ['vuetify'], 10 }, 11 app: { 12 head: { 13 title: 'test', 14 meta: [{ name: 'description', content: 'test' }], 15 }, 16 }, 17 18})

※以下の中身をコメントアウトするとエラーは無くなります

plugins/vuetify.js

1import { createVuetify } from 'vuetify' 2import * as components from 'vuetify/components' 3import * as directives from "vuetify/directives"; 4 5export default defineNuxtPlugin( nuxtApp => { 6 const vuetify = createVuetify({ 7 components, 8 directives 9 }) 10 11 nuxtApp.vueApp.use( vuetify ) 12});

「head.addHeadObjs」自体は以下ファイルでのみ見つかりました。
\node_modules\vuetify\lib\composables\theme.mjs

mjs

1 function install(app) { 2 const head = app._context.provides.usehead; 3 if (head) { 4 head.addHeadObjs(computed(() => { 5 const style = { 6 children: styles.value, 7 type: 'text/css', 8 id: 'vuetify-theme-stylesheet' 9 }; 10 ...

参考サイト:
https://zenn.dev/coedo/articles/nuxt3-vuetify3
https://note.com/doui_lab/n/n37a67a01981a

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答4

0

ベストアンサー

こんにちは、英語を日本語に訳してすみません。
Vuetify モジュールが壊れている可能性があります。
すべてのモジュールを再インストールしてください。

yarn cache clean rm -rf node_modules rm -rf yarn.lock yarn install

投稿2023/04/17 11:20

編集2023/04/17 11:24
ZynChroMaTiK

総合スコア9

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

harapara

2023/04/18 01:35 編集

上手くいきました!!こういうこともあるのですね、大変勉強になりました。。 本当にありがとうございます! メモ:npm用 --------------------------- npm cache clean --force rm -r node_modules rm package-lock.json npm install
guest

0

It was a very good post indeed. I thoroughly enjoyed reading it in my lunch time. Will surely come and visit this blog more often. Thanks for sharing. ร้านอาหารอุบล

投稿2023/09/01 15:28

sotera8477

総合スコア26

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

I've been using how-to-sign-a-pdf-with-a-digital-certificate-and-how-signnow-compares-to-hellosign-and-docusign for a year. And I can't think of anything I dislike about them. But I truly enjoyed it!

投稿2023/08/26 11:18

sotera8477

総合スコア26

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

自分も同じ状況です...

投稿2023/04/18 00:51

Harumaki_i

総合スコア8

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

harapara

2023/04/18 01:29

私はZynChroMaTiKさんが仰ってくださった、再インストールで使えるようになりました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.47%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問